From 9480a3c9942ab9aa02a4288223c3c4509d9badc6 Mon Sep 17 00:00:00 2001 From: admin Date: Mon, 23 Feb 2026 14:45:57 -0500 Subject: [PATCH] Add acceptance tests and align defaults to Sonnet 4 --- AGENTS.md | 23 + CONFIGURATION_GUIDE.md | 14 +- TODO_AND_OPTIMIZATIONS.md | 18 + backend/.env.example | 5 +- .../acceptance/handiFoods.acceptance.test.ts | 78 + backend/src/config/env.ts | 21 +- backend/src/controllers/documentController.ts | 9 +- backend/src/middleware/errorHandler.ts | 53 +- backend/src/middleware/firebaseAuth.ts | 123 +- backend/src/services/financialTableParser.ts | 64 +- .../handiFoods/handi-foods-cim.txt | 9480 +++++++++++++++++ .../handiFoods/handi-foods-output.txt | 231 + 12 files changed, 10034 insertions(+), 85 deletions(-) create mode 100644 AGENTS.md create mode 100644 TODO_AND_OPTIMIZATIONS.md create mode 100644 backend/src/__tests__/acceptance/handiFoods.acceptance.test.ts create mode 100644 backend/test-fixtures/handiFoods/handi-foods-cim.txt create mode 100644 backend/test-fixtures/handiFoods/handi-foods-output.txt diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..ac7478a --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,23 @@ +# Repository Guidelines + +## Project Structure & Module Organization +Two runnable apps sit alongside documentation in the repo root. `backend/src` holds the Express API with `config`, `routes`, `services`, `models`, `middleware`, and `__tests__`, while automation lives under `backend/src/scripts` and `backend/scripts`. `frontend/src` is the Vite + React client organized by `components`, `contexts`, `services`, `types`, and Tailwind assets. Update the matching guide (`DEPLOYMENT_GUIDE.md`, `TESTING_STRATEGY_DOCUMENTATION.md`, etc.) when you alter that area. + +## Build, Test, and Development Commands +- `cd backend && npm run dev` – ts-node-dev server (port 5001) with live reload. +- `cd backend && npm run build` – TypeScript compile plus Puppeteer config copy for deployments. +- `cd backend && npm run test|test:watch|test:coverage` – Vitest suites in `src/__tests__`. +- `cd backend && npm run test:postgres` then `npm run test:job ` – verify Supabase/PostgreSQL plumbing per `QUICK_START.md`. +- `cd frontend && npm run dev` (port 5173) or `npm run build && npm run preview` for release smoke tests. + +## Coding Style & Naming Conventions +Use TypeScript everywhere, ES modules, and 2-space indentation. ESLint (`backend/.eslintrc.js` plus Vite defaults) enforces `@typescript-eslint/no-unused-vars`, warns on `any`, and blocks undefined globals; run `npm run lint` before pushing. React components stay `PascalCase`, functions/utilities `camelCase`, env vars `SCREAMING_SNAKE_CASE`, and DTOs belong in `backend/src/types`. + +## Testing Guidelines +Backend unit and service tests reside in `backend/src/__tests__` (Vitest). Cover any change to ingestion, job orchestration, or financial parsing—assert both success/failure paths and lean on fixtures for large CIM payloads. Integration confidence comes from the scripted probes (`npm run test:postgres`, `npm run test:pipeline`, `npm run check:pipeline`). Frontend work currently depends on manual verification; for UX-critical updates, either add Vitest + Testing Library suites under `frontend/src/__tests__` or attach before/after screenshots. + +## Commit & Pull Request Guidelines +Branch off `main`, keep commits focused, and use imperative subjects similar to `Fix EBITDA margin auto-correction`. Each PR must state motivation, summarize code changes, link tickets, and attach test or script output plus UI screenshots for visual tweaks. Highlight migrations or env updates, flag auth/storage changes for security review, and wait for at least one approval before merging. + +## Security & Configuration Notes +Mirror `.env.example` locally but store production secrets via Firebase Functions secrets or Supabase settings—never commit credentials. Keep `DATABASE_URL`, `SUPABASE_*`, Google Cloud, and AI provider keys current before running pipeline scripts, and rotate service accounts if logs leave the network. Use correlation IDs from `backend/src/middleware/errorHandler.ts` for troubleshooting instead of logging raw payloads. diff --git a/CONFIGURATION_GUIDE.md b/CONFIGURATION_GUIDE.md index e07771e..f884f3d 100644 --- a/CONFIGURATION_GUIDE.md +++ b/CONFIGURATION_GUIDE.md @@ -24,8 +24,8 @@ DOCUMENT_AI_OUTPUT_BUCKET_NAME=your-document-ai-bucket DOCUMENT_AI_LOCATION=us DOCUMENT_AI_PROCESSOR_ID=your-processor-id -# Service Account -GOOGLE_APPLICATION_CREDENTIALS=./serviceAccountKey.json +# Service Account (leave blank if using Firebase Functions secrets / ADC) +GOOGLE_APPLICATION_CREDENTIALS= ``` #### Supabase Configuration @@ -206,6 +206,14 @@ firebase init firebase use YOUR_PROJECT_ID ``` +##### Configure Google credentials via Firebase Functions secrets +```bash +# Store the full service account JSON as a secret (never commit it to the repo) +firebase functions:secrets:set FIREBASE_SERVICE_ACCOUNT --data-file=/path/to/serviceAccountKey.json +``` + +> When deploying Functions v2, add `FIREBASE_SERVICE_ACCOUNT` to your function's `secrets` array. The backend automatically reads this JSON from `process.env.FIREBASE_SERVICE_ACCOUNT`, so `GOOGLE_APPLICATION_CREDENTIALS` can remain blank and no local file is required. For local development, you can still set `GOOGLE_APPLICATION_CREDENTIALS=/abs/path/to/key.json` if needed. + ### Production Environment #### 1. Environment Variables @@ -528,4 +536,4 @@ export const debugConfiguration = () => { --- -This comprehensive configuration guide ensures proper setup and configuration of the CIM Document Processor across all environments. \ No newline at end of file +This comprehensive configuration guide ensures proper setup and configuration of the CIM Document Processor across all environments. diff --git a/TODO_AND_OPTIMIZATIONS.md b/TODO_AND_OPTIMIZATIONS.md new file mode 100644 index 0000000..f346676 --- /dev/null +++ b/TODO_AND_OPTIMIZATIONS.md @@ -0,0 +1,18 @@ +# Operational To-Dos & Optimization Backlog + +## To-Do List (as of 2026-02-23) +- **Wire Firebase Functions secrets**: Attach `ANTHROPIC_API_KEY`, `OPENAI_API_KEY`, `OPENROUTER_API_KEY`, `SUPABASE_SERVICE_KEY`, `SUPABASE_ANON_KEY`, `DATABASE_URL`, `EMAIL_PASS`, and `FIREBASE_SERVICE_ACCOUNT` to every deployed function so the runtime no longer depends on local `.env` values. +- **Set `GCLOUD_PROJECT_ID` explicitly**: Export `GCLOUD_PROJECT_ID=cim-summarizer` (or the active project) for local scripts and production functions so Document AI processor paths stop defaulting to `projects/undefined`. +- **Acceptance-test expansion**: Add additional CIM/output fixture pairs (beyond Handi Foods) so the automated acceptance suite enforces coverage across diverse deal structures. +- **Backend log hygiene**: Keep tailing `logs/error.log` after each deploy to confirm the service account + Anthropic credential fixes remain in place; document notable findings in deployment notes. +- **Infrastructure deployment checklist**: Update `DEPLOYMENT_GUIDE.md` with the exact Firebase/GCP commands used to fetch secrets and run Sonnet validation so future deploys stay reproducible. + +## Optimization Backlog (ordered by Accuracy → Speed → Cost benefit vs. implementation risk) +1. **Deterministic financial parser enhancements** (status: partially addressed). Continue improving token alignment (multi-row tables, negative numbers) to reduce dependence on LLM retries. Risk: low, limited to parser module. +2. **Retrieval gating per Agentic pass**. Swap the “top-N chunk blast” with similarity search keyed to each prompt (deal overview, market, thesis). Benefit: higher accuracy + lower token count. Risk: medium; needs robust Supabase RPC fallbacks. +3. **Embedding cache keyed by document checksum**. Skip re-embedding when a document/version is unchanged to cut processing time/cost on retries. Risk: medium; requires schema changes to store content hashes. +4. **Field-level validation & dependency checks prior to gap filling**. Enforce numeric relationships (e.g., EBITDA margin = EBITDA / Revenue) and re-query only the failing sections. Benefit: accuracy; risk: medium (adds validator & targeted prompts). +5. **Stream Document AI chunks directly into chunker**. Avoid writing intermediate PDFs to disk/GCS when splitting >30 page CIMs. Benefit: speed/cost; risk: medium-high because it touches PDF splitting + Document AI integration. +6. **Parallelize independent multi-pass queries** (e.g., run Pass 2 and Pass 3 concurrently when quota allows). Benefit: lower latency; risk: medium-high due to Anthropic rate limits & merge ordering. +7. **Expose per-pass metrics via `/health/agentic-rag`**. Surface timing/token/cost data so regressions are visible. Benefit: operational accuracy; risk: low. +8. **Structured comparison harness for CIM outputs**. Reuse the acceptance-test fixtures to generate diff reports for human reviewers (baseline vs. new model). Benefit: accuracy guardrail; risk: low once additional fixtures exist. diff --git a/backend/.env.example b/backend/.env.example index 11a0760..4be6bf2 100644 --- a/backend/.env.example +++ b/backend/.env.example @@ -30,7 +30,8 @@ DOCUMENT_AI_LOCATION=us DOCUMENT_AI_PROCESSOR_ID=your-processor-id GCS_BUCKET_NAME=your-gcs-bucket-name DOCUMENT_AI_OUTPUT_BUCKET_NAME=your-document-ai-output-bucket -GOOGLE_APPLICATION_CREDENTIALS=./serviceAccountKey.json +# Leave blank when using Firebase Functions secrets/Application Default Credentials +GOOGLE_APPLICATION_CREDENTIALS= # Processing Strategy PROCESSING_STRATEGY=document_ai_genkit @@ -72,4 +73,4 @@ AGENTIC_RAG_CONSISTENCY_CHECK=true # Monitoring and Logging AGENTIC_RAG_DETAILED_LOGGING=true AGENTIC_RAG_PERFORMANCE_TRACKING=true -AGENTIC_RAG_ERROR_REPORTING=true \ No newline at end of file +AGENTIC_RAG_ERROR_REPORTING=true diff --git a/backend/src/__tests__/acceptance/handiFoods.acceptance.test.ts b/backend/src/__tests__/acceptance/handiFoods.acceptance.test.ts new file mode 100644 index 0000000..fcc2637 --- /dev/null +++ b/backend/src/__tests__/acceptance/handiFoods.acceptance.test.ts @@ -0,0 +1,78 @@ +import fs from 'fs'; +import path from 'path'; + +type ReferenceFact = { + description: string; + tokens: string[]; +}; + +const referenceFacts: ReferenceFact[] = [ + { + description: 'Leading value-added positioning', + tokens: ['leading', 'value-added', 'baked snacks'] + }, + { + description: 'North American baked snack market size', + tokens: ['~$12b', 'north american', 'baked snack'] + }, + { + description: 'Private label and co-manufacturing focus', + tokens: ['private label', 'co-manufacturing'] + }, + { + description: 'Facility scale', + tokens: ['150k+'] + } +]; + +const requiredFields = [ + 'geography:', + 'industry sector:', + 'key products services:' +]; + +const repoRoot = path.resolve(__dirname, '../../../..'); +const fixturesDir = path.join(repoRoot, 'backend', 'test-fixtures', 'handiFoods'); +const cimTextPath = path.join(fixturesDir, 'handi-foods-cim.txt'); +const outputTextPath = path.join(fixturesDir, 'handi-foods-output.txt'); + +describe('Acceptance: Handi Foods CIM vs Generated Output', () => { + let cimNormalized: string; + let outputNormalized: string; + let outputLines: string[]; + + beforeAll(() => { + const normalize = (text: string) => text.replace(/\s+/g, ' ').toLowerCase(); + const cimRaw = fs.readFileSync(cimTextPath, 'utf-8'); + const outputRaw = fs.readFileSync(outputTextPath, 'utf-8'); + cimNormalized = normalize(cimRaw); + outputNormalized = normalize(outputRaw); + outputLines = outputRaw + .split(/\r?\n/) + .map((line) => line.trim()) + .filter(Boolean); + }); + + it('verifies each reference fact exists in the CIM and in the generated output', () => { + for (const fact of referenceFacts) { + for (const token of fact.tokens) { + expect(cimNormalized).toContain(token); + expect(outputNormalized).toContain(token); + } + } + }); + + it('ensures key fields are resolved instead of falling back to "Not specified in CIM"', () => { + const findFieldValue = (label: string) => { + const lowerLabel = label.toLowerCase(); + const line = outputLines.find((l) => l.toLowerCase().startsWith(lowerLabel)); + return line ? line.slice(label.length).trim() : ''; + }; + + for (const label of requiredFields) { + const value = findFieldValue(label); + expect(value.length).toBeGreaterThan(0); + expect(value.toLowerCase()).not.toContain('not specified in cim'); + } + }); +}); diff --git a/backend/src/config/env.ts b/backend/src/config/env.ts index 0ab1687..074fec7 100644 --- a/backend/src/config/env.ts +++ b/backend/src/config/env.ts @@ -93,7 +93,7 @@ const envSchema = Joi.object({ DOCUMENT_AI_PROCESSOR_ID: Joi.string().required(), GCS_BUCKET_NAME: Joi.string().required(), DOCUMENT_AI_OUTPUT_BUCKET_NAME: Joi.string().required(), - GOOGLE_APPLICATION_CREDENTIALS: Joi.string().default('./serviceAccountKey.json'), + GOOGLE_APPLICATION_CREDENTIALS: Joi.string().allow('').default(''), // Vector Database Configuration VECTOR_PROVIDER: Joi.string().valid('supabase', 'pinecone').default('supabase'), @@ -137,7 +137,7 @@ const envSchema = Joi.object({ then: Joi.string().optional(), // Optional if using BYOK otherwise: Joi.string().allow('').optional() }), - LLM_MODEL: Joi.string().default('gpt-4'), + LLM_MODEL: Joi.string().default('claude-sonnet-4-20250514'), LLM_MAX_TOKENS: Joi.number().default(16000), LLM_TEMPERATURE: Joi.number().min(0).max(2).default(0.1), LLM_PROMPT_BUFFER: Joi.number().default(500), @@ -308,17 +308,16 @@ export const config = { openrouterApiKey: process.env['OPENROUTER_API_KEY'] || envVars['OPENROUTER_API_KEY'], openrouterUseBYOK: envVars['OPENROUTER_USE_BYOK'] === 'true', // Use BYOK (Bring Your Own Key) - // Model Selection - Using latest Claude 4.5 models (Oct 2025) - // Claude Sonnet 4.5 is recommended for best balance of intelligence, speed, and cost - // Supports structured outputs for guaranteed JSON schema compliance - // NOTE: Claude Sonnet 4.5 offers improved accuracy and reasoning for full-document processing - model: envVars['LLM_MODEL'] || 'claude-sonnet-4-5-20250929', // Primary model (Claude Sonnet 4.5 - latest and most accurate) - fastModel: envVars['LLM_FAST_MODEL'] || 'claude-3-5-haiku-latest', // Fast model (Claude Haiku 3.5 latest - fastest and cheapest) + // Model Selection - Unified on Claude Sonnet 4 (May 2025 release) + // Claude Sonnet 4 20250514 is the currently supported, non-deprecated variant + // This keeps multi-pass extraction aligned with the same reasoning model across passes + model: envVars['LLM_MODEL'] || 'claude-sonnet-4-20250514', // Primary model (Claude Sonnet 4) + fastModel: envVars['LLM_FAST_MODEL'] || 'claude-sonnet-4-20250514', // Fast model aligned with Sonnet 4 fallbackModel: envVars['LLM_FALLBACK_MODEL'] || 'gpt-4o', // Fallback for creativity // Task-specific model selection - // Use Haiku 3.5 for financial extraction - faster and cheaper, with validation fallback to Sonnet - financialModel: envVars['LLM_FINANCIAL_MODEL'] || 'claude-3-5-haiku-latest', // Fast model for financial extraction (Haiku 3.5 latest) + // Use Sonnet 4 for financial extraction to avoid deprecated Haiku endpoints + financialModel: envVars['LLM_FINANCIAL_MODEL'] || 'claude-sonnet-4-20250514', // Financial extraction model (Claude Sonnet 4) creativeModel: envVars['LLM_CREATIVE_MODEL'] || 'gpt-4o', // Best for creative content reasoningModel: envVars['LLM_REASONING_MODEL'] || 'claude-opus-4-1-20250805', // Best for complex reasoning (Opus 4.1) @@ -449,4 +448,4 @@ export const getConfigHealth = () => { }; }; -export default config; \ No newline at end of file +export default config; diff --git a/backend/src/controllers/documentController.ts b/backend/src/controllers/documentController.ts index 930ceeb..ca048e8 100644 --- a/backend/src/controllers/documentController.ts +++ b/backend/src/controllers/documentController.ts @@ -41,10 +41,11 @@ export const documentController = { return; } - // Validate file size (max 50MB) - if (fileSize > 50 * 1024 * 1024) { + const maxFileSize = config.upload.maxFileSize || 50 * 1024 * 1024; + if (fileSize > maxFileSize) { + const maxFileSizeMb = Math.round(maxFileSize / (1024 * 1024)); res.status(400).json({ - error: 'File size exceeds 50MB limit', + error: `File size exceeds ${maxFileSizeMb}MB limit`, correlationId: req.correlationId }); return; @@ -1013,4 +1014,4 @@ export const documentController = { throw new Error('Failed to get document text'); } } -}; \ No newline at end of file +}; diff --git a/backend/src/middleware/errorHandler.ts b/backend/src/middleware/errorHandler.ts index 039b4f4..e8e55e4 100644 --- a/backend/src/middleware/errorHandler.ts +++ b/backend/src/middleware/errorHandler.ts @@ -38,6 +38,46 @@ export interface ErrorResponse { }; } +const BODY_WHITELIST = [ + 'documentId', + 'id', + 'status', + 'fileName', + 'fileSize', + 'contentType', + 'correlationId', +]; + +const sanitizeRequestBody = (body: any): Record | string | undefined => { + if (!body || typeof body !== 'object') { + return undefined; + } + + if (Array.isArray(body)) { + return '[REDACTED]'; + } + + const sanitized: Record = {}; + for (const key of BODY_WHITELIST) { + if (Object.prototype.hasOwnProperty.call(body, key)) { + sanitized[key] = body[key]; + } + } + + return Object.keys(sanitized).length > 0 ? sanitized : '[REDACTED]'; +}; + +const buildRequestLogContext = (req: Request): Record => ({ + url: req.url, + method: req.method, + ip: req.ip, + userAgent: req.get('User-Agent'), + userId: (req as any).user?.id, + params: req.params, + query: req.query, + body: sanitizeRequestBody(req.body), +}); + // Correlation ID middleware export const correlationIdMiddleware = (req: Request, res: Response, next: NextFunction): void => { const correlationId = req.headers['x-correlation-id'] as string || uuidv4(); @@ -61,16 +101,7 @@ export const errorHandler = ( enhancedError.correlationId = correlationId; // Structured error logging - logError(enhancedError, correlationId, { - url: req.url, - method: req.method, - ip: req.ip, - userAgent: req.get('User-Agent'), - userId: (req as any).user?.id, - body: req.body, - params: req.params, - query: req.query - }); + logError(enhancedError, correlationId, buildRequestLogContext(req)); // Create error response const errorResponse: ErrorResponse = { @@ -246,4 +277,4 @@ export const getUserFriendlyMessage = (error: AppError): string => { // Create correlation ID function export const createCorrelationId = (): string => { return uuidv4(); -}; \ No newline at end of file +}; diff --git a/backend/src/middleware/firebaseAuth.ts b/backend/src/middleware/firebaseAuth.ts index 60dd8d4..c3c2732 100644 --- a/backend/src/middleware/firebaseAuth.ts +++ b/backend/src/middleware/firebaseAuth.ts @@ -1,24 +1,85 @@ import { Request, Response, NextFunction } from 'express'; -import admin from 'firebase-admin'; +import admin, { ServiceAccount } from 'firebase-admin'; +import fs from 'fs'; +import { config } from '../config/env'; import { logger } from '../utils/logger'; -// Initialize Firebase Admin if not already initialized -if (!admin.apps.length) { +const shouldLogAuthDebug = process.env.AUTH_DEBUG === 'true'; + +const logAuthDebug = (message: string, meta?: Record): void => { + if (shouldLogAuthDebug) { + logger.debug(message, meta); + } +}; + +const resolveServiceAccount = (): ServiceAccount | null => { try { - // For Firebase Functions, use default credentials (recommended approach) - admin.initializeApp({ - projectId: 'cim-summarizer' + if (process.env.FIREBASE_SERVICE_ACCOUNT) { + return JSON.parse(process.env.FIREBASE_SERVICE_ACCOUNT) as ServiceAccount; + } + } catch (error) { + logger.warn('Failed to parse FIREBASE_SERVICE_ACCOUNT env value', { + error: error instanceof Error ? error.message : String(error), }); - console.log('✅ Firebase Admin initialized with default credentials'); + } + + const serviceAccountPath = process.env.FIREBASE_SERVICE_ACCOUNT_PATH || config.googleCloud.applicationCredentials; + if (serviceAccountPath) { + try { + if (fs.existsSync(serviceAccountPath)) { + const fileContents = fs.readFileSync(serviceAccountPath, 'utf-8'); + return JSON.parse(fileContents) as ServiceAccount; + } + logger.debug('Service account path does not exist', { serviceAccountPath }); + } catch (error) { + logger.warn('Failed to load Firebase service account file', { + serviceAccountPath, + error: error instanceof Error ? error.message : String(error), + }); + } + } + + return null; +}; + +const initializeFirebaseAdmin = (): void => { + if (admin.apps.length) { + return; + } + + try { + const firebaseOptions: admin.AppOptions = {}; + const projectId = config.firebase.projectId || config.googleCloud.projectId; + if (projectId) { + firebaseOptions.projectId = projectId; + } + + const serviceAccount = resolveServiceAccount(); + if (serviceAccount) { + firebaseOptions.credential = admin.credential.cert(serviceAccount); + } else { + try { + firebaseOptions.credential = admin.credential.applicationDefault(); + logAuthDebug('Using application default credentials for Firebase Admin'); + } catch (credentialError) { + logger.warn('Application default credentials unavailable, relying on environment defaults', { + error: credentialError instanceof Error ? credentialError.message : String(credentialError), + }); + } + } + + admin.initializeApp(firebaseOptions); + logger.info('Firebase Admin initialized', { projectId: firebaseOptions.projectId }); } catch (error) { const errorMessage = error instanceof Error ? error.message : 'Unknown error'; - console.error('❌ Firebase Admin initialization failed:', errorMessage); - // Don't reinitialize if already initialized + logger.error('Firebase Admin initialization failed', { error: errorMessage }); if (!admin.apps.length) { throw error; } } -} +}; + +initializeFirebaseAdmin(); export interface FirebaseAuthenticatedRequest extends Request { user?: admin.auth.DecodedIdToken; @@ -30,45 +91,33 @@ export const verifyFirebaseToken = async ( next: NextFunction ): Promise => { try { - console.log('🔐 Authentication middleware called for:', req.method, req.url); - console.log('🔐 Request headers:', Object.keys(req.headers)); - - // Debug Firebase Admin initialization - console.log('🔐 Firebase apps available:', admin.apps.length); - console.log('🔐 Firebase app names:', admin.apps.filter(app => app !== null).map(app => app!.name)); - + logAuthDebug('Authentication middleware invoked', { + method: req.method, + path: req.url, + correlationId: req.correlationId, + }); + logAuthDebug('Firebase admin apps', { count: admin.apps.length }); + const authHeader = req.headers.authorization; - console.log('🔐 Auth header present:', !!authHeader); - console.log('🔐 Auth header starts with Bearer:', authHeader?.startsWith('Bearer ')); - if (!authHeader || !authHeader.startsWith('Bearer ')) { - console.log('❌ No valid authorization header'); res.status(401).json({ error: 'No valid authorization header' }); return; } const idToken = authHeader.split('Bearer ')[1]; - console.log('🔐 Token extracted, length:', idToken?.length); - if (!idToken) { - console.log('❌ No token provided'); res.status(401).json({ error: 'No token provided' }); return; } - console.log('🔐 Attempting to verify Firebase ID token...'); - console.log('🔐 Token preview:', idToken.substring(0, 20) + '...'); - // Verify the Firebase ID token const decodedToken = await admin.auth().verifyIdToken(idToken, true); - console.log('✅ Token verified successfully for user:', decodedToken.email); - console.log('✅ Token UID:', decodedToken.uid); - console.log('✅ Token issuer:', decodedToken.iss); + logAuthDebug('Firebase token verified', { uid: decodedToken.uid }); // Check if token is expired const now = Math.floor(Date.now() / 1000); if (decodedToken.exp && decodedToken.exp < now) { - logger.warn('Token expired for user:', decodedToken.uid); + logger.warn('Token expired for user', { uid: decodedToken.uid }); res.status(401).json({ error: 'Token expired' }); return; } @@ -76,11 +125,11 @@ export const verifyFirebaseToken = async ( req.user = decodedToken; // Log successful authentication - logger.info('Authenticated request for user:', decodedToken.email); + logger.info('Authenticated request', { uid: decodedToken.uid }); next(); } catch (error: any) { - logger.error('Firebase token verification failed:', { + logger.error('Firebase token verification failed', { error: error.message, code: error.code, ip: req.ip, @@ -97,13 +146,15 @@ export const verifyFirebaseToken = async ( // Try to verify without force refresh const decodedToken = await admin.auth().verifyIdToken(idToken, false); req.user = decodedToken; - logger.info('Recovered authentication from session for user:', decodedToken.email); + logger.info('Recovered authentication from session', { uid: decodedToken.uid }); next(); return; } } } catch (recoveryError) { - logger.debug('Session recovery failed:', recoveryError); + logger.debug('Session recovery failed', { + error: recoveryError instanceof Error ? recoveryError.message : String(recoveryError), + }); } // Provide more specific error messages @@ -140,4 +191,4 @@ export const optionalFirebaseAuth = async ( } next(); -}; \ No newline at end of file +}; diff --git a/backend/src/services/financialTableParser.ts b/backend/src/services/financialTableParser.ts index d73f7e7..53a14b7 100644 --- a/backend/src/services/financialTableParser.ts +++ b/backend/src/services/financialTableParser.ts @@ -22,6 +22,10 @@ const PERIOD_TOKEN_REGEX = /\b(?:(?:FY[-\s]?\d{1,2})|(?:FY[-\s]?)?20\d{2}[A-Z]*| const MONEY_REGEX = /-?\$?\(?\d[\d,]*(?:\.\d+)?\)?\s?(?:K|M|B)?/g; const PERCENT_REGEX = /-?\d{1,3}(?:\.\d+)?\s?%/g; +const resetRegex = (regex: RegExp): void => { + regex.lastIndex = 0; +}; + const ROW_MATCHERS: Record = { revenue: /(revenue|net sales|total sales|top\s+line)/i, grossProfit: /(gross\s+profit)/i, @@ -137,33 +141,37 @@ function yearTokensToBuckets(tokens: string[]): Array { * Extract numeric tokens (money/percentages) from a line or combined lines. * Best practice: Extract all numeric values and preserve their order to match column positions. */ -function extractNumericTokens(line: string, nextLine?: string): string[] { - const combined = `${line} ${nextLine || ''}`; +function extractNumericTokens(line: string, additionalContent?: string): string[] { + const combined = additionalContent ? `${line} ${additionalContent}` : line; + const lineLength = line.length; // Extract money values with their positions to preserve column order + resetRegex(MONEY_REGEX); const moneyMatches = Array.from(combined.matchAll(MONEY_REGEX)) - .map((m) => ({ value: normalizeToken(m[0]), index: m.index || 0 })) + .map((m) => ({ value: normalizeToken(m[0]), index: m.index ?? 0 })) .filter((m) => m.value && /\d/.test(m.value)); // Extract percentage values with their positions + resetRegex(PERCENT_REGEX); const percentMatches = Array.from(combined.matchAll(PERCENT_REGEX)) - .map((m) => ({ value: normalizeToken(m[0]), index: m.index || 0 })) + .map((m) => ({ value: normalizeToken(m[0]), index: m.index ?? 0 })) .filter((m) => m.value && /\d/.test(m.value)); - // Combine and sort by position to preserve column order (critical for table parsing) - const allMatches = [...moneyMatches, ...percentMatches] - .sort((a, b) => a.index - b.index) - .map((m) => m.value); + const sortedMatches = [...moneyMatches, ...percentMatches].sort((a, b) => a.index - b.index); - // Remove duplicates while preserving order - const tokens: string[] = []; - for (const token of allMatches) { - if (!tokens.includes(token)) { - tokens.push(token); - } + const primaryTokens = sortedMatches + .filter(match => match.index < lineLength) + .map(match => match.value); + + if (primaryTokens.length >= 2 || !additionalContent) { + return primaryTokens.length > 0 ? primaryTokens : sortedMatches.map(match => match.value); } - return tokens; + const secondaryTokens = sortedMatches + .filter(match => match.index >= lineLength) + .map(match => match.value); + + return primaryTokens.concat(secondaryTokens); } function isMoneyLike(value?: string): boolean { @@ -312,7 +320,7 @@ export function parseFinancialsFromText(fullText: string): ParsedFinancials { for (let j = lookAheadStart; j < lookAheadEnd; j++) { const checkLine = lines[j] || ''; - const hasNumbers = MONEY_REGEX.test(checkLine) || PERCENT_REGEX.test(checkLine); + const hasNumbers = containsMoneyOrPercent(checkLine); if (!hasNumbers) continue; // Skip lines without numbers @@ -441,14 +449,27 @@ export function parseFinancialsFromText(fullText: string): ParsedFinancials { // CRITICAL: Only match rows that contain BOTH the field name AND numeric values // This prevents matching descriptive text that just mentions financial terms - const hasMoneyOrPercent = MONEY_REGEX.test(combinedForTokens) || PERCENT_REGEX.test(combinedForTokens); + const hasMoneyOrPercent = containsMoneyOrPercent(combinedForTokens); if (!hasMoneyOrPercent) continue; // Skip lines without actual financial numbers for (const [field, matcher] of Object.entries(ROW_MATCHERS)) { if (!matcher.test(line)) continue; // Extract tokens from the combined lines - const tokens = extractNumericTokens(line, combinedForTokens); + const extraContent = `${nextLine} ${lineAfterNext}`.trim() || undefined; + let tokens = extractNumericTokens(line, extraContent); + + if (['grossMargin', 'ebitdaMargin', 'revenueGrowth'].includes(field)) { + const percentTokens = tokens.filter(isPercentLike); + if (percentTokens.length > 0) { + tokens = percentTokens; + } + } else if (['revenue', 'grossProfit', 'ebitda'].includes(field)) { + const moneyTokens = tokens.filter(isMoneyLike); + if (moneyTokens.length > 0) { + tokens = moneyTokens; + } + } // Only process if we found meaningful tokens (at least 2, indicating multiple periods) if (tokens.length < 2) { @@ -504,3 +525,10 @@ export function parseFinancialsFromText(fullText: string): ParsedFinancials { return result; } +const containsMoneyOrPercent = (text: string): boolean => { + resetRegex(MONEY_REGEX); + const hasMoney = MONEY_REGEX.test(text); + resetRegex(PERCENT_REGEX); + const hasPercent = PERCENT_REGEX.test(text); + return hasMoney || hasPercent; +}; diff --git a/backend/test-fixtures/handiFoods/handi-foods-cim.txt b/backend/test-fixtures/handiFoods/handi-foods-cim.txt new file mode 100644 index 0000000..13aa7fb --- /dev/null +++ b/backend/test-fixtures/handiFoods/handi-foods-cim.txt @@ -0,0 +1,9480 @@ +t +in +Po + +Bl + +Fall 2025 + +ue + +Confidential Information +Presentation + + Disclaimer +This Confidential Information Presentation (the “Presentation”) is intended solely for the use of prospective participants in determining whether or not to pursue a potential transaction involving Handi Foods Ltd. (the “Company”). This Presentation is of a +proprietary and confidential nature and is only being furnished to those parties who have agreed to be bound by the terms and conditions of a previously executed confidentiality agreement among each such party and the Company (the “Confidentiality +Agreement”). William Blair & Company, L.L.C. (“William Blair”) has been retained by the Company as its financial advisor. + +in + +t + +By accepting this Presentation, the recipient agrees that it will, and it will cause its directors, officers, employees, and representatives to, use this Presentation and all of the information contained herein only to evaluate a specific negotiated transaction with the +Company and for no other purpose and shall return this Presentation together with any copies to William Blair upon request. This Presentation contains confidential, non-public information concerning the Company. Nothing contained in this Presentation is +intended to in any way modify, amend or supersede any of the terms and conditions set forth in the Confidentiality Agreement, which remains in full force and effect in accordance with its terms. This Presentation may not be photocopied or otherwise +reproduced or distributed except in strict accordance with the terms of the Confidentiality Agreement. +This Presentation does not constitute an offer to sell or a solicitation of offers to buy securities of the Company or any of its assets, nor shall it (or any part of it) or the fact of its distribution form the basis of, or be relied upon in connection with, or act as any +inducement to enter into, any contract in relation to the Company. +All information contained herein has been provided by the Company, the management team of the Company and other sources that William Blair and the Company deem reliable. However, William Blair has not independently verified any of the information +contained herein, including financial estimates and projections. + +Po + +This Presentation includes certain statements, estimates, and projections provided by the Company with respect to its anticipated future performance. Such statements, estimates, and projections reflect various assumptions concerning anticipated results, +which assumptions may or may not prove to be correct. The information contained in this Presentation, including financial statements, projections and estimates, (a) is not necessarily indicative of current value or future performance of the Company, which may +be significantly more or less favorable than as reflected herein; (b) has not been independently verified and cannot be regarded as forecasts; and (c) is based on assumptions and analysis available as of October 28, 2025. Although the Company believes that +such assumptions, analysis and expectations are reasonable, if the Company’s assumptions or expectations turn out to be inaccurate, its results could materially differ from what it expected and the Company cannot and does not guarantee its future results, +levels of activity, performance or achievements. As a result, the Company cannot guarantee that any forward-looking statement will materialize and recipients are cautioned not to place undue reliance on these forward-looking statements. +Unless expressly stated otherwise, this Presentation presents information with respect to the Company as of October 28, 2025 and should not be construed to indicate that that there has been no change in the operations or the financial affairs of the Company +since such date. The information expressed in this Presentation is subject to change without notice. +The products, product names, logos, brands, and their trademarks featured or displayed within this Presentation are the property of their respective trademark owners, who are not affiliated with, nor do they sponsor or endorse, the Company or the Company’s +products and services. +This Presentation does not purport to contain all of the information that a prospective participant may desire or that may be required to evaluate a possible transaction involving the Company. Any recipient should conduct its own independent analysis of the +Company and the data contained or referred to herein. Neither the Company nor William Blair is acting as financial advisor, intermediary or distributor of securities, or in any fiduciary capacity of any kind to the recipient or any other prospective participant. The +recipient should also seek advice from its own specialized and independent advisors with respect to a possible transaction involving the Company, including but not limited to, financial, legal, accounting and tax advisors. +In furnishing this Presentation, neither the Company nor William Blair undertakes any obligation to provide additional information or to correct or update any of the information set forth in this Presentation. The Company and William Blair reserve the right to +amend or replace this Presentation at any time. + +ue + +The Company is free to conduct its process regarding a possible sale of the Company in its sole discretion, including, without limitation, negotiating with any prospective purchaser and entering into any definitive agreement without prior notice to any recipient +or any other person. The Company reserves the right, at any time in its sole discretion and without prior notice and any liability to the Company or any of its affiliates or advisors, to take any or all of the following actions at any time for any reason or no reason: +(a) solicit expressions of interest for the Company or any other transaction from any person; (b) negotiate for the sale of the Company or any other transaction with one or more persons; (c) reject any or all proposals in respect of the Company or otherwise; (d) +change the sale procedures or terminate the process for the sale of the Company; (e) terminate negotiations with any party; and (f) enter into one or more definitive agreements with any person for the sale of the Company or other transaction, without any +obligation to state the reason therefor. +Neither the Company, William Blair, nor any of their respective affiliates, agents, advisors, directors, officers, employees or shareholders, makes any representations or warranties, expressed or implied, as to the accuracy or completeness of the information +contained in this Presentation, or made available, orally or in writing, in connection with any further investigation of the Company, and nothing contained herein is, or shall be relied upon as, a promise or representation, whether as to the past or the future. The +Company, William Blair and each of their respective affiliates, agents, advisors, directors, officers, employees or shareholders expressly disclaim any liability relating to or resulting from the use, distribution or analysis of this Presentation. Only those particular +representations and warranties that may be made by the Company in a definitive written purchase agreement, when and if one is executed, and subject to such limitations and restrictions as may be specified in such purchase agreement, shall have any legal +effect. + +Bl + +Inquiries and communications should be directed only to the members of the William Blair team listed below. The recipient agrees that it shall not, and it shall direct its affiliates, agents, advisors, directors, officers, employees, shareholders or other +representatives to not, under any circumstances contact, either directly or indirectly, any director, officer, employee, shareholder, customer, supplier or competitor of the Company or any third party affiliated with or employed by the Company to discuss the +business of the Company, without first obtaining the written consent of William Blair. + +Ben Riback +Managing Director, +Head of Food & Beverage ++1 312 364 8882 +briback@williamblair.com + +Brent Smith +Managing Director, +Head of Consumer M&A ++1 312 364 5392 +bsmith@williamblair.com + +Artie Preiss +Director, +Food & Beverage ++1 312 364 8956 +apreiss@williamblair.com + +Zach Marzouk +Vice President, +Food & Beverage ++1 312 364 8564 +zmarzouk@williamblair.com + +2 + + Bl + +ue + +Po + +in + +t + +The Leader in Better-For-You +Baked Snacks + +3 + + Table of Contents +Executive Summary + +2 + +Investment Highlights + +3 + +Strategic Growth Plan + +4 + +Market Opportunity + +5 + +Company Overview + +6 + +Operational Excellence + +7 + +Financial Overview + +Bl + +ue + +Po + +in + +t + +1 + +4 + + ue + +Po + +in + +t + +Executive Summary + +Bl + +1 + + at a Glance +60% of +Gross Sales(1) + +Leading value-added provider of baked snacks in +North America + +21% of +Gross Sales(1) + +Financial Highlights (FY2025A) +($ in CAD; Fiscal Year Ending July 31) + +t + +Scalable platform with highly attractive opportunities +for growth + +Crackers + +Operating within the sizable ~$12B North American +baked snack market + +2% of +Gross Sales(1) + +Pretzel Chips + +Strategic Channels + +Puffs & Bits + +25.2% + +FY2021A – FY2025A +Net Sales CAGR + +95%+ + +Free Cash Flow Conversion(3) + +Representative Customers + +Bl +14% + +17% + +41% + +35% + +Private Label + +PF Adj. EBITDA Margin(2) + +% of Gross Sales (FY2025A) + +10% + +Brand Partners + +31.9% + +Cross-Border Capabilities + +% of Gross Sales (FY2025A) + +69% + +PF Adj. EBITDA(2) + +ue + +Diverse Channel Mix + +31% + +$28.8M + +Po + +Recent capital investment in high-capacity lines +enabling significant automation and efficiencies + +% of Gross Sales (FY2025A) + +Chips + +17% of +Gross Sales(1) + +Innovating, developing, and manufacturing +better-for-you (BFY) baked snacks + +Net Sales + +in + +End-to-end solutions partner simplifying private +label and co-manufacturing programs + +$90.1M + +Mass + +Club + +Private Label Grocers + +83% + +Grocery + +Canada + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. +(1) FY2025A. +(2) 2025A PF Adjusted EBITDA reflects $4.5M in one-time and non-recurring adjustments and $0.5M in pro forma adjustments. See pages 78-79 for additional detail. +(3) Free Cash Flow represents (Adj. EBITDA – Maintenance Capital Expenditures) / Adj. EBITDA. + +U.S. + +6 + + Significant Investment to Create a World-Class Baked Snack Platform + +2014 +▪ Began transition to +snacks from pita bread +▪ Line 3 installed at +Norelco + +t +Adds a New +Partner +▪ Acquired by Ironbridge Equity +Partners in September 2022 + +in + +Discontinued Bread Operation +▪ In 2019, focus shifted +exclusively to BFY baked snacks + +Po + +2012 +▪ Customer wins with Aldi, +H-E-B, Walmart (USA), +and Costco (Canada) + +Customer Wins +▪ Expanded partnership to +include Albertsons, Boudin +(Fog City Brands), Farm Boy +Lidl, and Trader Joe’s + +Leading Baked Snacks Platform and Partner to +Top Retail and Snack Manufacturers + +Facility Investment +▪ Lines 4 (2021) and 5 +(2022) installed at +Norelco + +Newkirk Facility Greenfield (2024) +▪ Lines 6 and 7 installed at Newkirk +▪ Pretzelized production begins +▪ Line 8 expected to be installed at Newkirk +in CY1Q’26 + +ue + +1977 +▪ Founded by a firstgeneration +immigrant from +Lebanon. Originally +produced pita bread +for customers in the +Greater Toronto Area + +Strategic Investments and +Professionalization + +Management Additions (2017) +▪ Brian Arbique (CEO) & John +Dobie (VP of Operations) +added to Executive Team + +Bl + +The Family +Years + +Management Addition (2024) +▪ Marc Diamant (CFO) added +to Executive Team + +7 + + Leading Better-For-You Baked Snack Platform with +Significant Near-Term Organic Growth +Automated & High-Capacity +Manufacturing Capabilities + +Nimble Innovation Engine + +Flexible Production Lines Designed for +Product Versatility + +Focused on Fast-Growing End Markets + +in + +t + +Proprietary Baking Process + +Po + +Robust Financial Profile + +$150.0 + +Net Sales + +Net Sales CAGR: 17.3% + +PF Adj. EBITDA + +$100.0 + +$50.3M +$9.4M + +$0.0 + +FY2021A + +FY2022A + +17.7% + +18.6% + +$19.3M + +(1) + +$120.0 + +$24.7M + +$90.1M + +(2) + +$28.8M + +$100.0 + +$100.3M + +(3) + +$31.0M + +$38.5M + +Bl + +$6.5M + +$140.0 + +$125.2M + +$79.3M + +$71.8M +$36.9M + +$160.0 + +$151.0M + +PF Adj. EBITDA Margin + +Net Sales CAGR: 25.2% + +$50.0 + +$200.4M + +$176.5M + +ue + +$200.0 + +Talented & Experienced +Management Team + +$49.2M + +$59.4M + +$68.8M + +$60.0 +$40.0 + +$20.0 +$0.0 + +FY2023A + +FY2024A + +FY2025A + +FY2026E + +FY2027P + +FY2028P + +FY2029P + +FY2030P + +26.8% + +31.1% + +31.9% + +30.9% + +30.8% + +32.6% + +33.6% + +34.3% + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2021A – FY2022A represent internal financials. FY2023A – FY2025A represents QoE adjusted financials. +(1) FY2023A PF Adj. EBITDA reflects $0.3M in in one-time and non-recurring adjustments and no pro forma adjustments. See pages 78-79 for additional detail. +(2) FY2024A PF Adj. EBITDA reflects $3.2M in in one-time and non-recurring adjustments and no pro forma adjustments. See pages 78-79 for additional detail. +(3) FY2025A PF Adj. EBITDA reflects $4.5M in in one-time and non-recurring adjustments and $0.5M in pro forma adjustments. See pages 78-79 for additional detail. + +$80.0 + +8 + + Built to Win: Leveraging Platform & Category Strength + +Everyday Consumption + + + +Better-For-You + + + +Private Label + + + +Global Flavors + + + +Functional Formats + +- VP Brands, Non-Customer + +“We run private brands to +differentiate; customers can only get +our products at our stores. We want +to offer products that will get +customers hooked and encourage +them to come back.” +- VP of Private Brands, Non-Customer + +“We have been actively considering +the naan category due to increasing +customer requests. The entire naan +category, whether it’s naan dippers +with more fluffiness or naan +crackers, is experiencing +tremendous consumer demand.” +- BD Manager, Customer + +(1) +(2) + +Modern, HighlyAutomated Operations +Significant Capacity + +ue + +Ethnic Diet + +Sole Source Supplier to +All Customers but One + +Relentless Focus on +Quality Assurance & +Food Safety + +~$12B Baked Snack +Market Opportunity(1) + +Third-party market study, October 2025. +Represents investment in capital assets from FY2021A (August 2020) through CY1Q’26. $ in CAD. + +Room for 3 More Lines – Next +Line On-Track for CYQ1’26 +~$65M Invested in 5 HighCapacity Production +Lines(2) + +Over a Decade Partnership +with 4 of 5 Top Customers + +Proven Ability to Innovate + +Bl + + + +“Underlying market trends like +better-for-you snack development +and flavor innovation are the main +growth drivers in the salty snack +category.” + +A Leading Baked +Snack Platform + +Po + + + +Go-To Partner + +t + +Powerful Market & +Consumer Tailwinds + +in + +Aligned with +Snacking Trends + +“All Hands” Service +Mindset + +Blue-Chip and High-Growth +Customer Base + +9 + + t +in +ue + +Po + +Investment Highlights + +Bl + +2 + + Investment Highlights + +Leading Baked Snack Platform with Flexible Production Capabilities + +in + +t + +1 + +7 + +Highly Automated Baking Equipment with Ample Capacity to Scale, Serving as the Responsibly +Priced Manufacturer of Choice + +4 + +Proven Product Developer with a Track Record of Innovation + +5 + +Strong Industry Tailwinds – Private Label Penetration and Better-For-You Snacking is Outpacing +the Market + +ue + +3 + +Bl + +6 + +Po + +Trusted Sole Source Supplier and Long-Term Partner to Leading Blue-Chip Retailers +and High-Growth Brands + +2 + +Experienced Management Team Driving Unrivaled Profitability and Consistent Margin Expansion + +Attractive Pipeline of Near-Term Growth Initiatives + +11 + + 1 + +Leading Baked Snack Platform with Flexible Production Capabilities +...Delivering High-Quality +Products at Scale… + +…With a Defensible +Market Position + +t + +A Category +Leading Platform… +Proprietary Baking Process +Differentiated small batch, double-baked +manufacturing process consistently yields +superior products + +✓ + +Broad Product Offering +Comprehensive product portfolio +across in-demand formats, delivered +at scale + +✓ + +Execution Excellence +Uncompromising focus on quality, +consistency, and responsiveness + +✓ + +Innovation Leader +Pioneering new, BFY baked snack products +through fast-adapt innovation model + +✓ + +Manufacturing Flexibility +Flexible lines designed for versatility across +product types and run duration + +✓ + +Authentic Heritage +Modern snacking innovation deeply rooted +in authentic pita tradition + +✓ + +Sole Source Supplier +Delivering unmatched reliability as the +clear, go-to solutions partner to blue-chip +and high-growth customers + +Po + +in + +✓ + +Longstanding Relationships +High customer satisfaction anchored by +Handi Foods’ entrenched role as a +strategic, value-driving partner + +ue + +✓ + +Custom Solutions +Seamless integration of seasonings and +inclusions across product portfolio + +Bl + +✓ + +✓ + +Streamlined Commercialization +Integrated team across sales, R&D, and +execution functions for consistent service +and delivery + +✓ + +High Barriers to Entry +Complex product replication, established +customer partnerships, long equipment +lead times, and automation fueled by +significant capital investment deter new +market entrants + +✓ + +Responsible Pricing +Established pricing strategy that reinforces +premium quality, builds lasting customer +trust, and delivers strong margins + +12 + + 1 + +is Attacking the Market with its Broad Solutions Offering +End-To-End Baked Snack Solutions Partner with a Comprehensive Product Portfolio… +Chips + +Pretzel Chips + +60% of Gross Sales(1) + +21% of Gross Sales(1) + +Puffs & Bits + +in + +t + +Crackers + +2% of Gross Sales(1) + +Po + +17% of Gross Sales(1) + +… and a Wide Range of Bases, Flavors, and Packaging +Bases & Oils + +Wide-Array + +5 + +65%+ + +Active +SKUs + +of Packaging +Formats + +Operating Days +per Week(2) + +Utilized with +Addition of 6th Line(3) + +Production +Capabilities + +Production +Lines(4) + +Shifts Twice +Per Day + +Room for 3 +Additional Lines(4) + +6 + +12-Hour + +Ample + +✓ Sea Salt +✓ Roasted Garlic +✓ Cheddar +✓ Legume Blend +✓ Black Olive +✓ Sweet Onion +✓ Chive + +Grains & Seeds + +Bl + +150+ + +Flexible + +✓ Enriched Wheat +Flower +✓ Sunflower Oil +✓ Chickpea Flour + +ue + +✓ Potato Flour +✓ Corn Flour +✓ Extra Virgin +Olive Oil + +Seasonings & Inclusions + +✓ Whole Grain +✓ Ancient Grain +✓ Multigrain +✓ Chia Seed + +✓ Poppy Seed +✓ Flax Seed +✓ Quinoa + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. +(1) FY2025A. +(2) Ability to increase capacity without incremental equipment or capex through a 6 th day. +(3) Scheduled for installation at Newkirk facility in CY1Q’26. Assumes FY2026E volume and current production schedule: two 12-hour shifts, 5 days per week. Includes allowances for changeovers, +routine mechanical downtime, and preventative maintenance. +(4) Includes 6th line to be installed at Newkirk facility in CY1Q’26. + +✓ Parmesan +✓ Manchego +✓ Chili +✓ Feta +✓ Rosemary Leaves +✓ Jalapeño +✓ Buffalo + +Bake Type +✓ Pita +✓ Naan +✓ Pretzel + +✓ Brioche +✓ Sourdough + +13 + + Private +Label + +31% of +Gross Sales (1) + +Brand +Partnerships + +Sole +Source + + + + + + +Customer + +Tenure +(Years) + +Segment + +FY25A Gross Sales % of Gross Sales +($M) +(FY25A) + +t + +69% of +Gross Sales(1) + +Trusted Sole Source Partner to 9 of the Top 10 Customers +10+ + +$16.3 + +18.0% + +Brand Partner + +2+ + +$16.3 + +18.0% + +Private Label + +10+ + +$9.9 + +10.9% + +Customer 4 + +Brand Partner + +10+ + +$8.7 + +9.6% + +Customer 5 + +Private Label + +10+ + +$8.1 + +8.9% + +Customer 6 + +Private Label + +5+ + +$5.9 + +6.5% + +Customer 7 + +Private Label + +5+ + +$3.1 + +3.4% + +Customer 8 + +Private Label + +15+ + +$2.9 + +3.2% + +Customer 9 + +Private Label + +5+ + +$2.7 + +3.0% + +Customer 10 + +Private Label + +5+ + +$2.7 + +3.0% + +All Other + +- + +- + +$14.2 + +15.6% + +Total + +- + +- + +$90.8 + +100.0% + +Customer 1 + +Private Label + +Customer 2 +Customer 3 + +in + +Go-To Partner for Premier Retailers and Disruptive Brands + +Po + + + + + + + +ue + +Permanent Private Label Behavior Shift(2) + +10.0% + +10+ +Years + +Deep, Longstanding Partnerships: More than a decadelong tenure with 4 of the Top 5 customers + +~8 + +Consistent Customer Loyalty: Average tenure of +~8 years across the Top 10 customers + +Years + +91% + +Critical Supply Role: Sole source supplier to customers +representing 91% of total FY2025A gross sales + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. +(1) FY2025A. +(2) U.S. Private Label Report, Circana data. Represents packaged food sales only. +(3) Euromonitor. + +(% YoY Growth) + +13.0% + +8% + +7% + +Bl + +2 + +Trusted Sole Source Supplier and Long-Term Partner to +Leading Blue-Chip Retailers and High-Growth Brands + +CY2022 + +CY2023 + +Private Label + +3.0% + +1% + +CY2024 + +4.0% + +1% + +CY1H'25 + +National Brands + +North American Private Label Snacking Growth(3) +CY2016A + +CY2025E + +CAGR (’16A – ’25E) + +$9.8B + +$17.2B + +6.5% +14 + + The Handi Advantage: Driving Long-Term Customer Loyalty + +Ease +of +De + +t + +1 + +Accelerated Development +Timeline Samples, line trials, and +costing are consistently delivered +ahead of schedule, supporting +rapid product launches + +po + +a +lS lM +er u l t i +vic e + +Res +ns + +ib + +e + +n +io a +t +n +ep +E x c cti o +Fun +3 + +Bl + +l + +Pr + +Partnership Model +Meet defined cycle-time and +on-time, in-full (OTIF) +standards, while leveraging +deep customer relationships + +ue + +4 + +Retail-Aligned Cost Structure +Intentional pricing across brand +partnerships and private label +programs while supporting retailer +margin goals + +– Senior Product Manager, Customer + +“Handi Foods has been best-in-class for us. +They have done a good job of coming to the +table with innovative thoughts and thinking.” +– Senior Product Manager, Customer + +2 + +Strategic Pricing Discipline +Actively monitors pricing at +retail to ensure products are +competitively positioned + +“Within our quality spectrum, Handi Foods sits at +the highest end. We have a three-tiered system of +good, better, and best and all of Handi Foods’ +products sit in our best tier.” + +Po + +ty +ali +u +Q +ct + +Customer-Centric Flexibility +Seamless coordination across R&D, +operations, and customer teams + +ent +pm +lo +ve + +Consumer-Validated Excellence +High repeat purchase rates and +strong consumer satisfaction, +driven by unmatched product +consistency + +Pr +od +u + +Where Tradition Meets Commercial Excellence +Quality ingredients and time-tested artisan baking +techniques deliver quality products that +exceed expectations + +in + +2 + +ici + +ng + +Responsive & Scalable Support +Ability to flex resources and +capabilities to meet evolving +customer needs + +“The individuals we work with at Handi Foods +are hands-on, which makes the projects and +business relationships go a lot smoother. Handi +has been great working with us across the board.” +– Director at Contract Manufacturing, Customer + +“While Handi Foods may be slightly higher priced +than competitors, I can count on them to have +product in the warehouse in good quality. They +have competitive pricing, slightly more +expensive but for all the right reasons.” +– Business Development Manager, Customer + +15 + + 2 + +Strong Retailer Value Proposition Drives Cross Merchandising + +Handi Foods’ Products are Strategically Merchandised in the Most Desirable In-Store Locations + +t + +Refrigerated Deli +Section + +Po + +in + +Premium Cheese / +Charcuterie Cooler + +Bl + +Targeting healthconscious patrons + +ue + +For easy pairings + +BFY / Healthy Foods + +Placements near +hummus & spreads for +high-margin add-ons + +Featured in elevated +snacking sections + +Premium Shelf +Stable Snacks + +Handi Foods’ baked snacks are merchandised both as standalone offerings and strategically paired with complementary +products, enabling cross-departmental sell-through and increased basket size +16 + + Handi Foods Delivers a Highly Attractive Product to Retailers + +– VP of Private Brands, Non-Customer + +in + +▪ Pita snacks are often placed in sections that are actively prioritized by retailers; +the deli and better-for-you locations that are common areas to display pita, and at +the same time, experience strong sales performance – driving retailers to +focus on investing in these categories + +“In our stores we place pita and naan snacks in the full deli +section, bread section, dairy section, and dry good sections. In +total, when you visit our stores, you’ll likely find pita products in +about six different locations.” + +t + +High-Priority Grocery Departments + +“Pita chips can be a power play in two different areas: either as +an on-the-go item or as a specialized product…In the center +store, depending on the quality of the chip, that's where we can +potentially make our margin.” + +Po + +Placement Flexibility / Cross-Merchandising with Complementary Products + +▪ Pita snacks benefit from flexible placement, performing well in high-traffic areas +and increasingly featured in better-for-you and cross-merchandising hubs (e.g., deli) +to drive cross-sell and health-driven snacking + +“Pita snacks are typically a higher margin, better retail value +item. To get that extra item in the basket, it's easier to sell when +it's a $3 to $4 purchase versus an $8 or $9 premium cracker. We +cross promote items like that where we can leave it at the full +retail price alongside an item that we may be discounting.” + +ue + +High Margin Offering + +– Senior Director of Brands, Non-Customer + +▪ Pita snacks deliver high margins for retailers as they are positioned as premium, +better-for-you alternatives to traditional chips and crackers + +– VP of Private Brands, Non-Customer +“Pita chips work as both high margin products and impulse +items. When making pita chips in a single three-or-four-ounce +format, it’s more of an impulse buy for customer going to the +grocery store to buy a sandwich and decide to buy the pita chip +package for $2.” + +Bl + +2 + +Pita Snacks Increase Consumer Basket Spend + +▪ Pita snacks often drive incremental basket spend by creating impulse purchases +in prime store locations and by naturally pairing with complementary goods such as +cheese, dips, and deli products – encouraging shoppers to add more to their carts +beyond the core snack purchase + +Source: Third-party market study, October 2025. + +– Senior Director of Brands, Non-Customer + +17 + + Exceptional Customer Satisfaction Driving Continued Spend +Customer Likelihood to Continue Using +Handi Foods Over the Next 3 Years + +Customer Difficulty to Switch +Private Label Vendors + +(Scale 0–10: 0 = “Not at all Likely to Recommend”; +10 = “Extremely Likely to Recommend”) + +(Scale 1–7: 1 = “Not at all Likely”; 7 = “Extremely Likely”) + +(Scale 1–7: 1 = “Not at all Difficult”; 7 = “Extremely Difficult”) + +10% + +Promoters (9–10) + +in + +90% + +t + +Customer Likelihood to Recommend / +Net Promoter Score (NPS) - Handi Foods + +Low Churn +Risk (5–7) + +100% + +80% + +Po + +2 + +10% +10% + +Passives (7–8) + +Very Difficult (5–7) + +Neutral (4) +Not Difficult (1–3) + +Historical Purchases +Increase (FY21–FY24 CAGR) + +Likelihood to Increase Spend with +Handi Foods (Next 3 Years)(1) + +Driver(s) of Expected Spend Increase + +26% + +7/7 + +Expansion into new products +(e.g., new flavors of pita snacks, cracker types) + +19% + +7/7 + +Expansion into new products +(e.g., brioche, sourdough) + +18% + +7/7 + +Organic sales growth & expansion into new products +(e.g., sourdough, naan) + +NA(2) + +7/7 + +Organic sales growth & expansion +into new formats + +Bl + +Customer + +ue + +Handi Foods’ Customers: Expansion Outlook + +Source: Third-party market study, October 2025. +(1) Based on a 1–7 scale (1 = “Not at all Likely”; 7 = “Extremely Likely”). +(2) NA denotes “not applicable.” Pretzelized came to market with Handi Foods in FY2024. Gross sales from Pretzelized increased from ~$4M CAD in FY2024A to ~$16M CAD in FY2025A. + +18 + + Highly Automated Bakery Equipment with Ample Capacity for +Growth, Serving as the Responsibly Priced Manufacturer of Choice +State-of-the-Art Facilities + +Production / Operational Initiatives + +t + +▪ Newkirk: Custom-Designed Bakery + +Newkirk (Ontario) + +3 High-Capacity Lines(1) + +in + +– 2 high-capacity lines installed in FY2024 + +108,000 sq. ft. + +– 1 additional high-capacity line to be installed +CYQ1’26 + +– 20% reduction in maintenance / KG and a 6% +reduction in direct labor / KG(2) + +Po + +3 + +– Specialized conveying and slicing for Artisanal Chip +production enhances line capacity to 500+ KGs / +hour from 200 KGs / hour + +Norelco (Ontario) + +46,000 sq. ft. + +ue + +3 Production Lines(3) + +– Dual-bagging capability allows for higher +throughput on smaller sized products + +▪ Norelco: Key Updates Executed + +– 1 high-capacity line installed in FY2022 + +PF Adj. EBITDA Margin(4) + +15% +FY2017A +(1) +(2) +(3) +(4) +(5) +(6) + +31% + +– 1 high-capacity line installed in FY2021 +– 1 legacy line installed FY2014 + +Bl + ++16% + +FY2025A + +~$65M + +65%+ + +200+ + +Capex +Investment in +High-Capacity +Lines(5) + +Utilized with +Addition of 6th +Line(6) + +Employees +Across All +Functions + +Includes the third, high-capacity line (L8) to be installed in CY1Q’26. +FY2024A – FY2025A. +Includes 2 high-capacity lines. +FY2025A PF Adj. EBITDA reflects $4.5M in one-time and non-recurring adjustments and $0.5M in pro forma adjustments. See pages 78-79 for additional detail. +Represents investment in capital assets from FY2021A (August 2020) through CY1Q’26. +Scheduled for installation at Newkirk facility in CY1Q’26. Assumes FY2026E volume and current production schedule: two 12-hour shifts, 5 days per week. Includes allowances for +changeovers and mechanical downtime. + +19 + + 3 + +Newkirk: Custom-Designed Facility +Ample Space Available + +Thoughtfully Designed + +t + +▪ Streamlined layout drives fast, frictionless flow from +receiving to shipping + +in + +Raw Materials Storage + +▪ Linear production line boosts output and minimizes +inefficiencies + +Line 6 +Line 7 + +▪ Expandable indoor silo system unlocking bulk +purchasing discounts and increased efficiency versus +totes + +Line 9 + +Line 10 + +Packaging / Seasoning Storage + +Meaningful Cost Reduction Initiatives + +Direct Labor Cost per KG ($ in actuals) +$0.99 + +$0.93 + +Bl + +Maintenance Expense per KG ($ in actuals) + +▪ Packaging and seasoning staged at line-end next to +storage and shipping area for seamless final stages + +ue + +Additional Line Capacity / Lines Not Yet Built + +FY2024A + +▪ Raw materials stored adjacent to dough mixers for rapid +changeovers and reduced downtime + +Installation Scheduled for CY1Q’26 + +Current Lines + +$0.15 + +Po + +Line 8 + +$0.12 + +FY2025A + +From FY2021A–FY2025A, direct labor expenses +declined by 18%+, despite 3%+ annual cost-of-living +increases paid by Handi Foods + +FY2024A + +FY2025A + +20 + + 3 + +Meaningful Investment in New Production Line +to Expand Capacity and Drive Continued Growth +State-of-the-Art Line Custom-Built for Handi Foods + +New Line Metrics (FY2026E) + +$13.3M + +Capital +Investment(1) + +in + +New Line Design Concept + +t + +($CAD) + +Po + +FY2026E Expected +Volume (KGs) + +x + +ASP / KG(2) + +Strategic Investment Priming Growth + +New Line Snapshot +Plant + +Newkirk + + + +Installation Date + +CY1Q’26 + +Primary Products +Volume (at Capacity) + +Reading Bakery +Systems +Pretzel Chips, +Chips, Crackers + +✓ Capable of producing wide range of +products providing capacity headroom +for new and existing customers + +✓ High-capacity line that will accelerate +overall throughput and further drive +direct labor efficiencies + +Bl + +OEM + +FY2026E +Contribution(4) + +ue + +High-Capacity Line + +✓ Supports continued expansion within the +rapidly growing pretzel chips segment + +Incremental FY2026E +Net Sales(3) + +4.0M KGs(5) + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. +(1) Of the total expected $13.3M capex investment, $1.9M has already been paid. The majority of the balance is due upon installation in CY1Q’26. +(2) Calculated as Total FY2026E Net Sales / Total FY2026E Volume. +(3) Calculated as $9.61 ASP per KG x FY2026E New Line Volume. +(4) As a % of FY2026E Net Sales. +(5) Assumes FY2027P – FY2030P production schedule of two 12-hour shifts, 6 days per week at current production speed, with the ability to increase capacity without incremental equipment or capex. +(6) Calculated as (FY2026E ASP Contribution Margin x Expected Volume at Capacity – Total Capital Investment) / Total Capital Investment. +(7) Calculated as (FY2026E ASP Contribution Margin x Expected Volume at Capacity) / Total Capital Investment. + += + +51.4% +Margin + +765K + +$9.61 +$7.3M +$3.8M + +New Line Metrics (at Capacity) + +Expected Volume at +Capacity (KGs)(5) + +4.0M + +Return on +Investment(6) + +51% + +Payback + +Period(7) + +~8 Months +21 + + Proven Formulation Expertise Powering Commercial Success +Driving Results Through Innovation + +Innovation Driven Sales Growth + +54.9 + +58.8 + +57.1 + +$50.0 + +$37.4 + +6.6 + +37.4 + +43.5 + +FY2021A + +FY2022A + +FY2021A and Prior + +% from New +Innovation(1) + +FY2023A + +FY2022A + +13.1% + +FY2023A + +24.2% + +ue + +Continuous Market Intelligence +Branded product innovation is closely monitored using both +syndicated research and proprietary data, providing insights +that guide product formulation, marketing, and competitive +differentiation + +Rapid Adaptation for Private Labels +An established in-house R&D team, with strong credibility +among retailers, enables quick translation of multinational +consumer packaged goods (CPG) innovation to private label +offerings, supporting customer retention and accelerated timeto-market +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. +(1) Represents % of FY gross sales. Represents SKUs introduced after FY2021A. + +Nearly 40% +of FY2025A +Gross Sales +Derived from +Handi +Innovated +Products +Over the Last +4 Years + +t + +$90.8 +3.5 +15.9 +2.4 +11.9 + +Po + +Customer and Trend-Driven Innovation +New products are developed in-house in response to direct +retailer requests or inspired by emerging consumer trends, +ensuring alignment with market demand and growth +opportunities + +$72.4 +3.2 +14.3 + +$79.9 +4.6 +3.4 +13.1 + +in + +Historic Expansion of Product Portfolio +Leveraged traditional pita bread expertise to develop a full +range of BFY snack products across various formats, +broadening Handi Foods’ offering to a wider audience + +($ in CAD millions) + +FY2024A + +FY2024A + +26.5% + +FY2025A +FY2025A + +37.1% + +150+ + +100+ + +~$20M + +Active SKUs + +Samples Developed +Annually + +FY2030P Projected +Gross Sales from New +Product Innovation + +Bl + +4 + +From Ideation to Product Experience, + +Offers End-to-End Solutions +22 + + 5 + +is Leading Growing Segments in the Massive Snacking Market… + +t + +(U.S. & Canada Multi-Outlet Snack Food Spend, in Retail Dollars) + +Growing U.S. & Canada +Baked Snack Category ($ in USD) + +(Total Baked Snack Opportunity Growth | U.S. & Canada | Retail Dollars) + +~3% +CAGR + +~5–6% +CAGR + +$13.2B + +$950M-$1,010M + +$480M-$500M + +$9.9B + +$2.1B + +$2.7B + +2025E + +2028P + +Private Label + +~8–9% +Private +Label +Baked +Snacks +CAGR + +Name Brands + +Stability and Resiliency of Snacking + +Demand for Better-For-You Food Options + +North American snack foods +remains resilient, driven by +more snacking occasions, +convenience, and a +focus on health + +Consumers are shifting toward +better-for-you snacks, favoring +clean-label formats (baked, +multigrain) and functional +benefits (protein, fiber) + +Bl + +Handi Foods’ +Offering is +Aligned with +Consumer +Trends + +$10.5B + +$470M-$510M + +ue + +$69B + +2025E + +$1,065M-$1,125M + +Po + +$12.0B + +(Total Pita Cracker, Pita Chip and Pretzel Chip Opportunity Growth | +U.S. & Canada | Retail Dollars) + +in + +Large U.S. & Canada +Snacking Category ($ in USD) + +Highly Attractive U.S. & Canada +Pita Crackers / Chips and +Pretzel Chips Sub-segments ($ in USD) + +2025E + +$510M-$530M + +$555M-$595M + +2028P + +Pita Crackers / Chips + +Pretzel Chips + +Increased Purchasing of Pita Snacks +Pita snacks are growing as a +healthier alternative, supported +by rising interest in global +flavors (e.g., Mediterranean) + +Source: Nielsen Byzzer Data and third-party market study, October 2025. +Note: Total Baked Snack spend excludes spend on traditional tortilla and potato chips and some non-chip/cracker baked snacks not included in Nielsen dataset for bagel chip/pretzel chip/pita chip and crackers. + +23 + + 5 + +… And is Perfectly Aligned to Growth in Private Label + +Private Label Set to Capture Growing Share of Consumer Snacking Spend(1) + +35% + +10% + +Increase in Consumers that +Expect to Purchase More +Private Label Products + +8% + +Last 3 years + +Next 3 years + +Po + +57% + +10% + +Purchase more + +Purchase about the same + +Purchase less + +Purchasing more private label + +CY2022A + +Private Label Growth is Consistently Outpacing Name Brands(3) + +CY1Q’24 + +3.3% + +3.9% + +4.5% + +3.4% + +0.7% + +0.8% + +CY2Q’24 + +1.0% + +1.2% + +0.1% + +CY3Q’24 +2024 Total: + +(1) +(2) +(3) + +5.4% + +2.4% + +1.4% + +Private Label Snack Consumption Growing with +Attractive Consumer Segments(1) + +6.9% + +5.3% + +L52W + +Millennial Consumers Expected to Purchase the Same +94% of +or More Private Label Snacks Over the Next 3 Years + +4.8% + +2.8% + +2.7% + +Bl + +2.0% +1.5% +0.9% + +3.5% + +4.3% + +4.8% + +CY2024A + +ue + +7.0% + +CY2023A + +Total Private Label Snacking Growth Relative to Total Branded Category Growth + +(Monthly Dollar Sales vs. Year Ago, Private Label and Name Brand, Percentage Growth Relative to Equivalent Month One Year Prior) + +3.4% + +2.0x + +1.8x + +1.3x + +58% + +2.9% + +2.7x + +in + +32% + +t + +(Percentage of Snacks Purchased that are Private Label | Consumer Web Survey Respondents | Past 3 Years vs. Next 3 Years) + +Private Label Snacks Drive Category Expansion, +Consistently Outpacing Branded Growth(2) + +2.2% + +2.1% + +1.2% + +0.7% + +-0.1% + +CY4Q’24 + +PL +3.9% + +0.4% + +CY1Q’25 + +0.5% + +2.2% + +0.8% + +CY2Q’25 + +0.6% + +High-Income Consumers Expected to Purchase the +94% of +Same or More Private Label Snacks Over the Next 3 Years +Gen Z Consumers Expected to Purchase the Same +89% of +or More Private Label Snacks Over the Next 3 Years + +Name Brands +1.0% + +Third-party market study, October 2025. +Nielsen as of September 20, 2025. +Private Label Manufacturer’s Association and third-party market study, October 2025. + +24 + + 6 + +Experienced Management Team Driving Unrivaled +Profitability and Consistent Margin Expansion +Proven F&B Veterans Have +Positioned Handi for Growth + +Net Sales +$250.0 + +($ in CAD) + +CAGR: 17.3% + +Gross Margin % + +$0.0 + +$50.3M + +25% + +25% + +FY2021A + +FY2022A + +36% + +35% + +32% + +$90.1M + +PF Adj. EBITDA + +$80.00 + +($ in CAD) + +70% + +7+ Years + +with Handi Foods + +60% + +35% + +36% + +37% + +37% + +John Dobie + +40% + +VP Operations + +30% + +7+ Years + +with Handi Foods + +20% + +FY2023A + +FY2024A + +FY2025A + +FY2026E + +FY2027P + +FY2028P + +FY2029P + +FY2030P + +PF Adj. EBITDA Margin % + +$68.8M + +0.65 + +$59.4M + +$49.2M + +$50.00 +(2) + +(1) + +$19.3M + +$20.00 + +$6.5M + +$9.4M + +17.7% + +18.6% + +FY2021A + +FY2022A + +26.8% + +FY2023A + +$28.8M + +$31.0M + +31.9% + +30.9% + +(3) + +0.55 + +$38.5M + +Bl + +CAGR: 45.1% + +$30.00 + +0.75 + +1+ Years + +ue + +CAGR: 19.0% + +$40.00 + +CFO + +0.85 + +$60.00 + +$0.00 + +President & CEO + +Marc Diamant + +$90.00 + +$10.00 + +80% + +50% + +36% + +$100.00 + +$70.00 + +Brian Arbique + +in + +$36.9M + +$79.3M + +$71.8M + +$100.3M + +$125.2M + +90% + +Po + +$100.0 + +$50.0 + +$151.0M + +CAGR: 25.0% + +$150.0 + +$176.5M + +$200.4M + +t + +$200.0 + +$24.7M +31.1% + +FY2024A + +FY2025A + +FY2026E + +30.8% + +FY2027P + +32.6% + +FY2028P + +33.6% + +FY2029P + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2021A – FY2022A represent internal financials. FY2023A – FY2025A represents QoE adjusted financials. +(1) FY2023A PF Adj. EBITDA reflects $0.3M in one-time and non-recurring adjustments and no pro forma adjustments. See pages 78-79 for additional detail. +(2) FY2024A PF Adj. EBITDA reflects $3.2M in one-time and non-recurring adjustments and no pro forma adjustments. See pages 78-79 for additional detail. +(3) FY2025A PF Adj. EBITDA reflects $4.5M in one-time and non-recurring adjustments and $0.5M in pro forma adjustments. See pages 78-79 for additional detail. + +34.3% + +FY2030P + +0.45 +0.35 +0.25 +0.15 + +with Handi Foods + +✓ Righted the family business – professionalizing +and implementing foundational best practices +✓ Designed and built a state-of-the-art 108k sq. +ft. Newkirk facility with capacity to take Handi +Foods to $200M+ of net sales +✓ Cemented a multi-year contract with Handi +Foods’ fastest growing customer +✓ Grew net sales ~2.5x since FY2021A +✓ Improved margins by 14%+ since FY2021A, +leading to $17M+ of incremental EBITDA +25 + + Well-Invested Operations Driving Industry-Leading Margins + +Best-in-Class Margins Driven By... + + + +Outpacing the Market & Competition(1) +Gross Margin(1) + +Significant investment in high-capacity production lines + +~35% + +in + +36% + +EBITDA Margin + +t + +6 + + + +Highly scalable model with minimal increases to overhead + + + +Sole source relationship reinforcing entrenched position +at customer + + + +Cost structure benefits from employer friendly Toronto +labor market + + + +Execution credibility allowing for ‘responsible’ vs. ‘lowest’ pricing + +31% + +Po + +~27% + +~20% + +~14% + +PL Brands Snack Brands + +ue + +Handi +(2) +Foods + +Handi +(3) +Foods + +PL Brands Snack Brands + +Track Record of Operational Improvement and Margin Strength(2) +$0.6 + +PF Adj. EBITDA Margin + +11.6% +FY2018A + +$0.9 + +$1.6 + +$1.3 + +$1.5 + +$2.6 + +$3.1 + +$3.2 + +26.8% + +31.1% + +31.9% + +Bl + +PF Adj. EBITDA ($/KG) + +15.5% + +FY2019A + +21.6% + +FY2020A + +17.7% + +18.6% + +FY2021A + +FY2022A + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2021A – FY2022A represent internal financials. FY2023A – FY2025A represents QoE adjusted financials. +(1) +PL Brands and Snack Brands represent third-party market research. +(2) +FY2025A. +(3) +FY2025A PF Adj. EBITDA reflects $4.5M in one-time and non-recurring adjustments and $0.5M in pro forma adjustments. See pages 78-79 for additional detail. +(4) +FY2023A PF Adj. EBITDA reflects $0.3M in adjustments and no pro forma adjustments. See pages 78-79 for additional detail. +(5) +FY2024A PF Adj. EBITDA reflects $3.2M in adjustments and no pro forma adjustments. See pages 78-79 for additional detail. + +(4) + +FY2023A + +(5) + +FY2024A + +(3) + +FY2025A + +26 + + 7 + +Attractive Pipeline of Near-Term Growth Initiatives +Organic Growth + +Upside + +2 + +3 + +4 + +Expand Wallet Share +with Existing Customers +Through Increased +Distribution and +Cross-Sell Opportunities + +Strategic Growth +Through New Customer +Relationships + +New Product +Development Leveraging +Existing Manufacturing +Assets + +Upside to Plan + +Accelerate growth by driving +deeper penetration of existing +SKUs across current customers + +Unlock new customer relationships +by leveraging the breadth and +momentum of the existing +product portfolio +▪ Convert non-pita retailers into +private label partners + +Drive innovation through the +development of new products +across formats, bases, and flavors + +▪ Win share in established baked +snack accounts through +differentiated offering + +▪ Leverage flexible production +capabilities to act as the go-to +baked snack solutions provider +for customers + +▪ Wallet share and SKU expansion +within existing customers + +in + +Po + +ue + +▪ Scalable cross-sell opportunities + +▪ SKU expansion through product +innovation in emerging categories + +Bl + +▪ Strategic alignment with high +growth customers + +t + +1 + +▪ Identify and execute on +additional co-man opportunities + +Strategic initiatives with potential +to outperform growth target + +▪ Utilize Handi Foods-owned +SnackHappy ‘test’ brand to +validate innovative products with +customers +▪ Expand into identified adjacent +snack categories, an incremental +~$10B USD market opportunity +▪ Attractive inorganic growth +opportunities + +27 + + t +in +ue + +Po + +Strategic Growth Plan + +Bl + +3 + + Attractive Pipeline of Near-Term Growth Initiatives +Net Sales +($ in CAD) + +17% CAGR + +t + +4 + +$ + +2 +1 + +$200M+ + +Po + +$90M + +in + +3 + +Organic Growth + +2 + +1 + +Strategic Growth +Through New Customer +Relationships + +4 + +3 + +New Product +Development Leveraging +Existing Manufacturing +Assets + +Bl + +Expand Wallet Share with +Existing Customers +Through Increased +Distribution and +Cross-Sell Opportunities + +Upside + +FY2030P + +ue + +FY2025A + +Upside to Plan +▪ + +Activation of +SnackHappy, HandiOwned Brand at Retail + +▪ + +Adjacent Baked Snack +Category Expansion + +▪ + +M&A Opportunities +29 + + Longstanding Blue-Chip Partnerships Are +Poised to Drive Significant Growth +(Top 10 Customers Gross Sales from Existing SKUs, $ CAD in millions) + +Long-Term Sales Growth Enabled by Established Strategic Alignment(1) + +t + +31% CAGR + +14% CAGR +$145.0 + +As Pretzelized’s exclusive supplier, Handi Foods is uniquely +positioned to scale alongside its customer’s rapid expansion into new +formats, retailers, and geographies + +$16.3 + +FY2025A + +FY2030P + +Po + +40% CAGR + +Handi Foods to benefit from online channel growth as Amazon +expands their Aplenty brand from AmazonFresh (~64 locations) to the +Amazon.com online platform, exponentially expanding availability + +14% CAGR +$76.7 + +$63.7 + +in + +1 + +Significant Runway to Increase Wallet Share +with Existing Customers and SKUs + +$6.5 + +$1.2 + +FY2025A + +FY2030P + +5% CAGR + +As the long-term sole source provider of the high-volume Pita Bites +Crackers (one of the leading unit-sales items in Trader Joe’s stores), +Handi Foods will enjoy continued consistent growth behind Trader +Joe’s loyal following + +ue + +$58.6 + +Bl + +Handi Foods provides the mini-flatbread ingredient to support +MapleLeaf Foods’ expansion of their Lunchmate meal kit program + +FY2023A + +FY2025A + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. + +FY2030P + +Handi Foods is well-positioned to support Aldi’s aggressive store +expansion and rising foot traffic, while continuing to drive trial of new +products across the network + +$16.3 + +$21.2 + +FY2025A + +FY2030P +41% CAGR + +$2.5 + +$0.5 +FY2025A + +FY2030P +13% CAGR + +$8.1 +FY2025A + +$15.1 + +FY2030P + +30 + + Recent and Near-Term Existing Product Opportunities with Current Customers + +t + +✓ Sourdough +✓ Pita Chips +✓ Brioche +✓ Potato-based + +in + +▪ Handi Foods hosts regular on-premise innovation sessions with +Loblaws at which all new product ideas are presented and analyzed +▪ At the most recent session (June 2025) Loblaws expressed significant +interest in a wide-range of new products + +▪ Handi Foods has a history of deep engagement with Aldi on product +tests and new product ideas (currently in-test on 2 mixed-pack items) + +▪ Wegmans is proceeding with the launch of a Sourdough SKU and an +extension of their 10oz offering with addition of a Parmesan Garlic +SKU in Summer/Fall 2026 + +✓ Sourdough +✓ Brioche +✓ Sticks + +ue + +Po + +▪ Handi Foods has been selected to be the baked chip supplier of choice +for 7 of 23 Aldi warehouses – shipments to begin March 2026 + +✓ Sourdough +✓ Pretzel Chips +✓ Pita Chips +✓ Brioche + +▪ At the most recent innovation session (June 2025) Walmart Canada was +eager to pursue next steps on a potato-based crisp offering following +the success of the Mondelez Crispers product in Canada +▪ Handi Foods is attempting to expand offering to Walmart U.S. based on +demonstrated success at Walmart Canada + +$8.0M + +in FY2030P +Cross-Sell +Opportunities + +✓ Pita Chips +✓ Naan +✓ Brioche + +Bl + +1 + +Existing Customer Momentum Unlocks +Scalable Cross-Sell Opportunities + +▪ Handi Foods has a deep relationship with Lidl dating back to their +initial entry into the U.S. in 2017 that has expanded into a multi-SKU +program as well as access to product tests + +▪ Handi Foods is currently in discussion to become their supplier of choice +for Pita Chips + +✓ Pita Chips +✓ Brioche + +31 + + 1 + +Long-Term Growth Partnership with Pretzelized +Track Record of Innovation and Volume Growth, Paving the Way for Scaled Success +(Pretzelized KG Volume) + +Format Innovation #2 + +0.4M KGs +FY2024A + +2 Club Pack SKUs + +1.9M KGs +FY2025A + +▪ +▪ + +Upside opportunity +Product offering that doesn’t exist in the +market today – highly confidential + +in + +6 Pretzel Chip +and Cracker SKUs + +Launch: March/April 2026 +Potential for ~$1M projected 2030P +Gross Sales + +Transformative Innovation #3 + +Launch: CY1Q/2Q’26 +Numerous varieties currently in testing +$4M+ projected 2030P Gross Sales + +2.8M KGs + +FY2026E + +7.2M KGs + +8.2M KGs + +FY2029P + +FY2030P + +Po + +▪ +▪ + +▪ +▪ +▪ + +t + +Format Innovation #1 + +5.5M KGs + +4.2M KGs + +FY2027P + +FY2028P + +▪ + +First Order: +Shipped CY1Q’24 + +▪ + +Exclusive Contract: +Long-term, sole source agreement + +▪ + +Collaborative Innovation Partner: +Numerous products brought to market with robust +innovation pipeline + +ue + +Handi Foods is the Long-Term Partner of Choice + +Proven Speed-to-Market: 30+ SKUs launched in under 18 months + ++ + +Bl + +Capacity & Operational Excellence: Scalable production with +guaranteed capacity +Trusted & Collaborative: Extensive R&D partnership + +“Every product we have launched has been on time… we move very quickly, we change +everything all the time - and for a manufacturer to keep up with us is almost impossible but +Handi has done that flawlessly.” +- Sam Kestenbaum, CEO of Pretzelized + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. + +“I will honestly say that Handi is the single best supplier I have ever worked with from a +manufacturer standpoint.” +- Sam Kestenbaum, CEO of Pretzelized + +32 + + Expanding Pretzelized Customer Base & Distribution Footprint +Pretzelized's Momentum in Retail… +~3.0x + +Intentional Pretzelized Distribution Expansion +with Massive Whitespace Available in Key +Accounts + +4.0 + +LTM September 2025 + +✓ Store perimeter more conducive to impulsive +purchase with high-margin products +✓ Shoppers in deli spend more per trip, +supporting premium positioning + +(% All Commodity Volume)(1) + +~2.5x + +Emerging Distribution + +20.6% + +✓ Reinforces better-for-you and freshness cues + +ue + +7.6% +2024 + +Purposeful Positioning in Deli + +Po + +Early Distribution + +1.4 + +2024 + +…and Attractive In-Store Placement + +t + +(Units in Millions, Volume Sold at Retail)(1) + +…Growing Customer Base… + +in + +1 + +LTM September 2025 + +Leading Mass +Market Retailer + +Bl + +Leading New Snack Brand in Deli Section + +On the Horizon + +✓ Cross-merchandising opportunities with +complementary products (hummus, tzatziki) + +Steadily Climbing ACVs with +Accelerating Velocity + +Future Expansion + +Delivered Biggest Quarter within the Natural +Channel with $4.2M+ in Sales(2) + +Note: Financials in $CAD unless otherwise noted. +(1) Nielsen data ended L52 weeks September 20, 2025. Annual figures as of year end December 28. +(2) Spins data ended September 7, 2025. $ in USD. + +33 + + Numerous Avenues for Growth with Existing Customers +Handi Foods is Well-Positioned to Expand Wallet Share and Pursue New Retail and CPG Opportunities in North America + +Market Opportunity + +Pita Crackers + +Pita Chip + +Naan Chip / +Cracker + +~$480M + +~$95M + +Sourdough Chip / Corn Flour Chip / +Cracker +Cracker +~$90M + +Potato Chip / +Cracker + +Brioche Chip / +Cracker + +“I am particularly interested in exploring +sourdough crackers with Handi Foods.” +—BD Manager, Customer + +in + +Retailers + +t + +(Handi Foods Retailer Customers: Current Private Label Baked Snack Offerings) + +~$80M + +~$60M + +~$90M + +Po + +“We maintain an openness to partnership +with Handi Foods on new products and we are +open to exploring brioche or sourdough.” +—Dir. of Contract Manufacturing, Customer + +ue + +“We have been actively considering the naan +category due to its increasing customer +requests. The entire naan category, whether +it’s naan dippers with more fluffiness or naan +crackers, is experiencing tremendous +consumer demand.” +—BD Manager, Customer + +Bl + +1 + +Existing Private Label Offering: Handi Foods Customer + +Existing Private Label Offering: Other Supplier + +No Private Label Offering + +▪ ~$50M-$60M annual pita snack opportunity within current private label customers who do not manufacture pita chips or crackers with Handi Foods today +▪ Current customers present ample whitespace across Handi Foods’ emerging categories: naan, sourdough, corn flour, potato flour, and brioche. These +categories present a combined ~$365M-$415M in total 3-year market potential for Handi Foods to capitalize on, across customers and noncustomers + +Source: Retailer websites and third-party market study, October 2025. $ USD in Millions. + +34 + + 2 + +Meaningful Whitespace with New Customers + +t + +Significant Interest from Blue-Chip Customers Creating Near Term Opportunities +Private Label Customers + +Opportunity Overview: + +Convert Large Non-Pita Retailers into Private +Label Partners + +✓ Intends to launch 2 Brioche Cracker SKUs as +part of 2027 shelf reset (FY2027P) + +Po + +✓ Represents early success post Handi Foods +recent change in broker representation + +Expand Offering Through Existing Co-Man +Relationships + +Aggressively pursue significant regional and +channel retailers with full product portfolio + +Re-Activated Pursuit of New Quality Co-Man +Programs and Early Engagement with Start-Ups + +ue + +✓ Launching 2 Private Label Naan Crackers +SKUs, confirmed for shipment beginning +March 2026 + +Co-Man Customers + +in + +Case Study: + +Emerging Start-Ups + +Leverage Budgeted Co-Man-Specific Sales +Resources + +$2,771 +$1,848 +$924 + +$3,326 + +$3,492 + +FY2026E FY2027P FY2028P FY2029P FY2030P + +Note: July 31 fiscal year end, Financials in $CAD unless otherwise noted. +(1) Represents March 2026 through July 2026. + +FY2027P + +$2,548 + +FY2028P + +FY2029P + +FY2030P + +$4,125 + +(Gross Sales, $ in 000s) + +$4,661 + +$1,383 + +(1) + +$8,310 + +(Gross Sales, $ in 000s) + +Bl + +(Gross Sales, $ in 000s) + +$2,815 +$1,625 + +$633 +FY2027P + +FY2028P + +FY2029P + +FY2030P + +35 + + Accelerating Growth Fueled by Continuous Innovation +Phase of Development (Handi Foods) + +Sticks + +Product range developed and customer +presentations in progress + +~$50M + +Sourdough + +Emerging product with active customers + +~$80M - $90M + +Brioche + +Emerging product – in development + +~$80M - $90M + +New Bases + +New Inclusions + +Functional Formats & Pairings + +in + +Seed +Based Snacks + +Almond FlourBased Snacks + +Protein + +Avocado Oil + +~$15M - $30M + +~$190M - $240M + +~$130M - $180M + +~$15M - $30M + +~$15M - $30M + +~15% - 20% + +Category CAGR(2) + +Category Size(1) + +~2% - 7% + +Category Size(1) + +~30% - 40% + +Category Size(1) + +~5% - 10% + +✓ Aligned with indemand global flavor +trends in a convenient, +on-the-go format + +Bl + +~25% - 30% + +Category CAGR(2) + +Category Size(1) + +Naan +Dippers + +ue + +Veggie FlourBased Snacks +Category Size(1) + +Estimated Market Opportunity(1) + +t + +Product Innovation + +Po + +3 + +Category CAGR(2) + +Category CAGR(2) + +Category CAGR(2) + +Dip +Pairings +✓ Allows bundling of +complimentary +products with popular +dip combinations + +$14.5M + +FY2030P New Product Innovation +Revenue Opportunity +Note: July 31 fiscal year end. +(1) Represents total and potential retail dollar opportunity, third-party market study. $ USD in Millions. +(2) Represents FY2023A – FY2025A category growth, third-party market study, October 2025. + +36 + + 4 + +Upside Opportunities + +Cheese Cracker +Butter Cracker +Sandwich Crackers +Wheat Crackers +Saltine, Soda & Oyster Crackers +Graham Crackers +Pretzel Chips +Pita Chips/Crackers +Crisp Bread/Flatbread Crackers +Rice Crackers +Bagel Chips +All Other (Misc. Crackers, Variety +Packs) +Total + +Handi Foods is +in discussions +with Costco +(Canada and U.S.) +for a range of +products under the +SnackHappy brand + +Bl + +Retailers can now utilize the SnackHappy brand +when introducing new products, giving Handi +Foods an accelerated path to market for its +innovative products + +Broad Opportunity to Grow through M&A +✓ Adjacent Category Diversification + +✓ Infrastructure and Distribution Expansion +✓ Core Category Consolidation + +(1) + +Third-party market study, October 2025. + +“Every year we have several +projects ongoing with Handi, +and we evaluate them based on +their communication and +capabilities to produce different +varieties… We have never had +a problem with Handi Foods.” + +in + +H-E-B has agreed +to utilize the +SnackHappy brand +as a “test” for new +product innovations +from Handi Foods + +~$3,070M +~$1,760M +~$1,260M +~$900M +~$710M +~$550M +~$490M +~$480M +~$170M +~$110M +~$70M + +ue + +Handi Foods’ SnackHappy brand is designed to act +as a ‘test’ brand whereby retailers can assess +product success with minimal commitment, time +and investment risk + +CY2025 Sales +($USD)(1) + +Category + +Po + +Historically, while retailers are eager to accelerate +private label innovation, they tend to seek branded +validation of new products prior to committing the +resources and time to private label entry + +Adjacent Baked Snack Category Expansion + +t + +Acceleration of Handi Owned SnackHappy Brand at Retail + +($USD, Est. EBITDA) + +$15M + +Salty Snacks PL / +Co-Manufacturer + +$15M + +BFY Snack PL / +Co-Manufacturer + +~$2,400M + +~$11,970M + +Illustrative M&A Targets +$30M +$20M +Salty Snacks PL / +Co-Manufacturer + +Sweet Baked +Goods PL / CoManufacturer + +—Sourcing Manager, Customer + +“Handi Foods is hungry for +more business, and they have +strong R&D capabilities. I am +not currently in the market for a +pita chip but when I am I will +go with Handi Foods.” +—Director of Private Brands, NonCustomer + +$30M + +Salty Snacks PL / +Co-Manufacturer + +$40M + +Transformational +Salty Snacks PL / +Co-Manufacturer + +37 + + t +in +Po +ue + +Market Opportunity + +Bl + +4 + + Handi Foods Operates in the Sizeable Baked Snack Market + +(2025 | U.S. & Canada | Retail Dollars) + +U.S. & Canada Multi-Outlet Snack Food Spend ($ in USD) +(Retail Dollars) + +t + +Handi Foods Market Opportunity ($ in USD) + +in + +~2% CAGR + +Total Snack +Opportunity: + +$69B + +Total Baked +Snack Opportunity: + +$12B + +Po +2025E + +The overall snacking market has demonstrated resiliency / stability amid +uncertain economic conditions and shifting consumer preferences + +U.S. & Canada Baked Snack Opportunity ($ in USD) +(Retail Dollars) + +~2% CAGR + +$11.4B + +$12.0B + +2022A–2025E +CAGR + +$9.5B + +$9.9B + +~1% + +$1.9B + +$2.1B + +~4% + +2022A + +2025E + +Bl + +Inclusive of bagel, pita, pretzel chips, +and crackers + +2022A + +ue + +Comprised of cookies, crackers, potato +chips, bars, tortilla chips, nuts/seeds, +pretzels, and more + +$69B + +$68B + +$65B + +Private Label + +Name Brand + +Source: Nielsen Byzzer Data and third-party market study, October 2025. +Note: Total Salty Snack Spend excludes spend on traditional tortilla and potato chips and some non-chip/cracker baked snacks not included in Nielsen dataset for bagel chip/pretzel chip/pita chip and crackers. + +39 + + Handi Foods is the Leader in Private Label Pita Snacking + +(Near-Term Market Opportunity for Handi Foods - Current Core and Emerging Product Offerings | U.S. & Canda) + +t + +Significant Attainable Near-Term Opportunity via Current Pita Cracker & Chip Offering ($ in USD) + +in + +~$1,925M–$2,245M + +~$610M– +$820M + +~$1,315M–$1,425M + +Po + +~$365M– +$415M +~$480M– +$500M +~$470M– +$510M +Pretzel Chips + +~5–6% +CAGR + +~$555M–$595M + +~$470M–$510M + +~$125M–$145M +2025E + +Current Core and +In-Development Product +Opportunity + +New Bases, Inclusions, +Pairings & Formats + +Core and Expansion Market +Opportunity + +Private Label Leads the Way + +Name Brands +~4% CAGR + +✓ Handi Foods holds ~60% share of private label pita cracker & pita chip sales in +the U.S. & Canada, positioning Handi Foods well for future growth + +Bl + +~$385M–$405M +~$345M–$365M + +In-Development Products +(Naan, Sourdough, Corn-flour, +Potato-flour, Brioche) + +ue + +Pita Crackers & Chips + +~$170M–$190M + +✓ Pita snack alignment to sustained better-for-you trends and growing consumer +interest in global/international foods are expected to drive its accelerated growth +Private Label +~10%–11% CAGR +relative to the baked snack market at-large + +2028P + +Source: Nielsen Byzzer Data and third-party market study, October 2025. +Note: Total Baked Salty Snack Spend excludes spend on traditional tortilla and potato chips and some non-chip/cracker baked snacks not included in Nielsen dataset for bagel chip/pretzel chip/pita chip and crackers. $ USD. + +40 + + Pretzel Chips Provide a Massive Growth Segment for Handi Foods + +(Near-Term Market Opportunity for Handi Foods - Current Core and Emerging Product Offerings | U.S. & Canda) + +t + +Significant Attainable Near-Term Opportunity via Current Pretzel Chip Offering ($ in USD) + +in + +~$1,925M–$2,245M + +~$610M– +$820M + +~$1,315M–$1,425M + +Po + +~$365M– +$415M +~$480M– +$500M +~$470M– +$510M +Pretzel Chips + +~2–3% +CAGR + +2025E + +New Bases, Inclusions, Pairings +& Formats + +Core and Expansion Market +Opportunity + +Name Brands +~1% CAGR + +✓ Pretzelized, Handi Foods’ pretzel chip customer, currently represents ~$50M–$60M(1) +in total U.S. retail dollar sales (2025E) + +Bl + +~$410M–$420M + +~$80M–$90M + +Current Core and +In-Development Product +Opportunity + +Pretzelized’s Contracted Sole Source Supplier + +~$510M–$530M + +~$480M–$500M + +~$400M–$410M + +In-Development Products +(Naan, Sourdough, Corn-flour, +Potato-flour, Brioche) + +ue + +Pita Crackers & Chips + +~$100M–$110M +2028P + +Private Label +~7%–8% CAGR + +✓ Handi Foods’ gross sales from Pretzelized have grown 350%+ from $3.6M CAD in +FY2024A to $16.3M CAD in FY2025A + +✓ Handi Foods serves as the exclusive supplier to Pretzelized, the fastest-growth +pretzel chip brand in the category + +Source: Nielsen Byzzer Data and third-party market study, October 2025. +Note: Total baked snack spend excludes spend on traditional tortilla and potato chips and some non-chip/cracker baked snacks not included in Nielsen dataset for bagel chip/pretzel chip/pita chip and crackers. $ USD. +(1) +Management estimate across measured and unmeasured channels. + +41 + + Handi Foods has Immediate ‘Right-to-Win’ in ~$2B Core Market with +Clear Pathway to Incremental ~$10B Opportunity + +t + +Meaningful Opportunity to Unlock Full ~$12B North American Baked Snack Market +via Expansion into Adjacent New Product Categories ($ in USD) +(Handi Foods Total Market Opportunity Walkup U.S. & Canada | Total and Potential U.S. & Canada Retail Dollar Opportunity) + +in + +4 + +~$11,970M + +Po + +~$5,245M– +$4,825M + +3 + +~$4,900M– +$4,800M + +1 + +~$7,145M– +$6,725M + +2 + +Pita Crackers & +1 +Chips + +Source: +Note: + +Pretzel Chips + +2 + +~$2,245M– +$1,925M + +~$1,425M– +$1,315M + +In-Development +3 +Products + +~$1.3B – $1.4B opportunity in +pita, pretzel chips, and indevelopment baked snack +offerings (naan, sourdough, +corn flour, potato flour, and +brioche) + +2 + +Core & In4 +Development +Opportunity + +New Bases, +5 Pairings +Inclusions, +& Formats + +Incremental whitespace from +innovative bases (veggie flour, +almond flour, and seeds), +inclusions (protein, avocado oil), +functional (chickpea), and +formats (naan dippers, scoops, +and dip pairings) + +Core, In6 +Development +and Expansion +Opportunity + +3 + +New Baked +7 +Snack Categories + +Pathway to take advantage of +additional baked snack +categories including cheese, +wheat, oyster, and flatbread +crackers + +Bl + +1 + +~$480M-$500M + +~$610M-$820M + +ue + +~$470M-$510M + +~$365M-$415M + +Handi Foods internal sales data, Nielsen Byzzer data, and third-party market study, October 2025. +Numbers may not sum due to rounding. Market opportunity estimates are all in U.S. retail dollars. + +Handi Foods +8 Term +Medium +Opportunity + +4 + +Adjacent Baked +9 +Snack Categories + +Total Baked Snack +10 +Opportunity + +Expansion into adjacent +categories – including butter, +sandwich, graham, and rice +crackers, as well as bagel chips +– within the ~$12B North +American baked snack category + +42 + + Better-For-You Market Momentum +Fueled by Consumer Trends +Growing Demand for BFY Products +Aligns with Handi Foods’ Growth + +(Percentage of Consumer Web Survey Respondents | Scale of 1–7, 1 is “No Preference”; 7 is “Strong Preference”) + +73% + +22% + +19% + +23% + +23% + +30% + +25% + +18% + +Prefer “Better-For-You” Snacks + +18% + +Portfolio Alignment +Handi Foods’ baked pita snacks fits +squarely within better-for-you trend, with +innovation potential in alternative flours, +low carb, and high protein + +24% + +21% + +26% + +25% + +24% + +ue + +Overall + +66% + +16% + +17% + +7% + +3% + +6% + +2% +4% +Ages 30-44 + +6% + +15% +7% + +4% + +6% + +Ages 18-29 + +1: No Preference + +2 + +3 + +4 + +Ages 45-59 + +5 + +6 + +10% + +Ages 60+ + +7: Strong Preference + +Demographic segments (e.g., Millennials) that demonstrate the strongest preference for BFY, are also most +inclined to purchase private label products (and the most bullish in their expectations for future private label +purchasing) – advantageous for Handi Foods in serving the cross-section of BFY and private label products +Source: Third-party market study, October 2025. + +Consumer Preference Leverage +The segments driving BFY growth also +favor private label, giving Handi Foods a +unique advantage in capturing this overlap + +2% + +Bl + +2% +6% + +6% + +26% + +22% + +19% + +16% + +72% + +in + +67% + +Po + +70% + +t + +Better-For-You Preference Permeates Across Consumer Cohorts + +Market Growth Tailwinds +BFY snacking is expanding overall, fueled +by demand for clean-label ingredients +(baked, multigrain) and functional benefits +(protein, fiber) + +43 + + Meaningful Whitespace for the U.S. & +Canadian Private Label Markets to Mature +The U.S. and Canada are Underpenetrated Relative to Other Countries(1) + +52% + +UK + +46% + +Germany +Netherlands + +34% + +France + +33% + +Italy + +31% + +Consumer perception of private label now in line with name +brands on quality and variety, prompting greater adoption +across consumer segments + +Norway + +18% + +Private Label Continues to Capture Market Share in +the North American Snacking Category(2) + +Bl + +19% + +17% + +Private Label Penetration in the U.S. & Canada Lags Mature +Markets, Leaving Significant Headroom for Expansion +(1) +(2) + +Rising private label demand reinforces Handi Foods’ +position as strategic partner to retailers, delivering +products that match or exceed brand-quality standards +while providing superior value + +25% + +Canada + +U.S. + +Advantage + +ue + +Sweden + +The + +Po + +37% + +in + +Switzerland + +Growing Preference For Private Label Products + +t + +(Percentage of Private Label Value Share of Global Retail by Country, 2023) + +Third-party market study, October 2025. +Nielsen data as of September 20, 2025. Volume measured in equivalized units as a function of weight - this metric normalizes the sales volume of +different products into a single, standard unit of measure, which is relevant to a specific product category. Represents calendar year end figures. + +15.2% + +CY2021A + +15.7% + +CY2022A + +16.2% + +16.3% + +CY2023A + +CY2024A + +44 + + Positive Consumer Sentiment Primes Private Label +Products for Growth in the U.S. & Canada + +Lowest + +t + +Highest + +S Korea + +Turkey + +Romania + +Poland + +Greece + +China + +Chile + +Singapore + +Colombia + +Canada + +Italy + +in +Australia + +Mexico + +Po + +Brazil + +India + +Saudi +Arabia + +France + +S Africa + +Indonesia + +U.S. + +Thailand + +UK + +Germany + +77% 77% 75% 75% 74% 72% 72% 72% 71% 71% 70% 69% 69% 69% 69% 68% 68% 67% 64% 62% 62% +60% 56% 54% 52% +Egypt + +72% + +say private labels +are good +alternatives to +name brands + +Private Label is Going Mainstream + +Spain + +U.S. Consumers + +Private Label Value Perception by Country +Highest + +S Korea + +Turkey + +Romania + +Greece + +Poland + +Chile + +Colombia + +China + +Australia + +Saudi +Arabia + +Singapore + +Italy + +Mexico + +France + +Indonesia + +Canada + +Brazil + +ue + +India + +S Africa + +U.S. + +Thailand + +Germany + +Spain + +UK + +80% 77% 76% 76% 75% 75% 75% 75% 72% 72% 71% 71% 70% 70% 70% 69% 69% 69% +64% 63% 60% 59% 59% 55% +46% +Egypt + +75% + +say private labels +are good value for +the money + +Lowest + +Lowest + +Source: Nielsen US Consumer Outlook 2025 and third-party market study, October 2025. + +Poland + +France + +Greece + +Germany + +Italy + +Canada + +Turkey + +UK + +China + +Romania + +Australia + +Chile + +S Korea + +Colombia + +U.S. + +Spain + +Singapore + +Mexico + +S Africa + +Brazil + +Indonesia + +Saudi +Arabia + +India + +78% 77% 71% 71% 68% 66% 65% 64% +63% 64% 59% 59% 57% 56% 55% 55% 53% 52% 52% 51% 51% 50% 50% 49% 49% +Thailand + +say they would buy +more private label +if a larger variety +were available + +Highest + +Egypt + +59% + +Bl + +Private Label Demand by Country + +45 + + Handi Foods is Outperforming Branded Pita Snacks +Commentary + +t + +Handi Foods Volume +CAGR: 19% +CAGR: 15% + +15.8 + +13.1 + +8.0 + +8.9 + +FY2021A + +FY2022A + +FY2023A + +FY2024A + +FY2025A + +FY2026E + +21.1 + +18.6 + +Po + +7.4 + +10.4 + +5.1 + +6.4 + +FY2027P + +FY2028P + +FY2029P + +FY2030P + +CAGR: (6%) + +32.0 + +27.5 + +27.2 + +27.0 + +CY2023 + +CY2024 + +Sep. 2025 LTM + +Bl + +34.6 + +CY2021 + +CY2022 + +✓ Well-positioned to capitalize on private +label tailwinds, gaining share from +branded players like Stacy’s through +long-term and entrenched partnerships +with leading private label grocers such +as Trader Joe’s, Aldi, and Lidl + +ue + +Stacy’s Pita Chips Volume(1) +(Equivalized Units in Millions) + +✓ Handi Foods achieved a robust 15% +volume CAGR, increasing from 5.1M +KGs in FY2021A to 8.9M KGs in +FY2025A. Growth was driven by SKU +expansion within existing top +customers and the onboarding of new +private label and co-manufacturing +relationships + +in + +(Volume, KGs in Millions) + +Note: July 31 fiscal year end. +(1) Nielsen data as of September 20th, 2025. Volume measured in equivalized units as a function of weight - this metric normalizes the sales volume of different products into a single, standard +unit of measure, which is relevant to a specific product category. Represents calendar year end figures. + +✓ Poised to benefit from its sole source +partnership with high-growth brands +such as Pretzelized, which are gaining +market share through its differentiated +product and innovative offerings + +46 + + t +in +Po +ue + +Company Overview + +Bl + +5 + + Advantaged Market Position Driven by Coveted +Capabilities and Go-to-Market Strategy +End-to-End Value-Added Solutions Provider + +Diverse and Attractive Business Mix +Product + +t + +Segment + +% of Gross Sales (FY2025A) + +in + +% of Gross Sales (FY2025A) + +2% + +17% + +31% + +Total FY2025A Gross +Sales from Sole +Source Customers + +Sole Source Supplier + +~8 Years + +Long-Term Blue-Chip and High-Growth +Customer Base + +Invested in +Capacity(2) + +35 + +New SKUs since +FY2021A + +150K+ + +Sq. Ft. Across +Two Facilities + +Brand Partners + +Private Label + +Channel + +Other + +ue + +$65M+ + +69% + +% of Gross Sales (FY2025A) + +State-of-the-Art, Automated Manufacturing + +10% + +14% + +Pretzel +Chips + +60% + +Chips + +Crackers + +Geography + +% of Gross Sales (FY2025A) + +17% + +41% + +Proven R&D / Innovation Track Record + +Bl + +Average Top 10 +Customer Tenure(1) + +21% + +Po + +91%+ + +35% + +Efficient, Well-Capitalized Operations +Position Handi Foods for Margin Growth + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. +(1) FY2025A. +(2) Represents investment in capital assets from FY2021A (August 2020) through CY1Q'26. + +Mass + +Club + +Private Label Grocer + +Grocery + +83% +Canada + +U.S. + +48 + + Outsized Growth and Diversification of the Product Portfolio + +Began pretzel chip +production in February 2024, +growing sales +350% from +FY2024A to FY2025A + +3% +30% + +$90.8M + +19% +CAGR(1) + +Pretzel Chips + +$1.4M + +3% + +Puffs & Bits + +$19.4M + +15% + +Chips + +21% + +Crackers + +ue + +2% +17% + +NA + +$16.3M + +$74.5M + +67% + +$37.4M + +FY2025A + +$1.3M + +60% + +Puffs & Bits + +Chips + +Pretzel + +Crackers + +$11.1M + +$53.7M + +Bl + +21% + +25% +CAGR + +Po + +FY2021A + +FY2021A – FY2025A CAGR + +t + +% of Gross Sales + +Gross Sales + +in + +Product Lineup + +$25.0M + +FY2021A + +Crackers +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. NA denotes ‘not applicable’. +(1) Represents growth of existing FY2021A products. + +FY2025A + +Chips + +Puffs & Bits + +Pretzel Chips +49 + + Diverse Product Portfolio Across +In-Demand Shapes, Formats, and Textures +Chips + +Private Label +Grocers + + + + + +Club + + + +Grocery + + + +Mass + + + +Pretzel Chip + +Puffs & Bits + + + + + + + +Po + +Distribution +Channel + +in + +t + +Crackers + + + + + + + + + + + + + +ue + +Selected Products + +Gross Sales (FY2025A) + +% of Gross Sales (FY2025A) + +Bl + +Representative Customers + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. + +$53.7M + +$19.4M + +$16.3M + +$1.4M + +60% + +21% + +17% + +2% +50 + + Robust Suite of Baked, BFY Products + +Volume (KGs) + +Active Customer(s) + +Crackers + +Active SKUs + +Active SKUs + +21% + +24 + +75 + +79% + +Po + +5.2M + +Brand +Partners + +Chips + +Private +Label + +100% + +1.8M + +14 + +Total FY2025A Volume + +Private +Label + +ue + +Pretzel Chip + +8.9M+ KGs + +38 + +Brand +Partners + +100% + +1.9M + +1 + +28 + +Bl + +Brand +Partners + +Puffs & Bits + +150+ + +PL / Brand Mix(2) + +in + +Product + +t + +Industry Leading Assortment of Highly Customizable Products(1) + +Private +Label + +Samples Developed +Annually + +33% + +0.2M + +9 + +10 + +Brand +Partners + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. +(1) FY2025A. + +100+ + +67% +Private +Label + +51 + + Expertise in a Wide Variety of Packaging Formats + +✓ Typical for crackers + +✓ Typical for chips + +Selected +Products + +✓ Master case packaging + +✓ Versatile form + +✓ Unique to 3 customers’ +specialty orders(1) + +90+ + +55+ + +25+ + +4+ + +Unique SKUs + +Unique SKUs + +Unique SKUs + +Bl + +SKU +Count + +✓ Resealable branded bag + +t + +✓ Sealed branded +bag + +Po + +✓ Sealed bag in a branded +box + +Bulk + +ue + +Description + +Form-Seal Bag + +in + +Bag in Box + +Stand-Up +Resealable Bag + +Unique SKUs + +Note: Fiscal year end for the company is July 31. +(1) Bulk Customers include Maple Leaf Foods, Whole Grains Inc., and VegPro International. + +52 + + Nimble R&D Process to Fast-Follow Trends +History of Innovation with +Clearly Defined Go-Forward Opportunities + +2 + +Fast-Adapt +Innovation in +Quickly Growing +Categories + +Artisanal +Chips + +in +FY16 + +Skilled R&D team designs +products that can be +quickly implemented into +existing operations + +Handi Foods continues +to develop its product +pipeline and development +of an emerging halo +brand, SnackHappy + +FY17 + +Round & +Square Chips + +FY19 + +Pita Bits + +FY20 + +Naan Crackers + +FY24 + +Pretzel Chips + +FY25/26 + +Rings, Sticks, +Sourdough + +Bl + +3 + +Real-Time Data +Monitoring to +Identify Emerging +Trends + +Pita Crackers +& Puffs + +ue + +Multinational +CPGs + +Market Reaction +to Multinational +CPG Product +Launch + +FY12 + +Po + +1 + +Customer requests and +emerging consumer +trends are monitored +using syndicated and +proprietary data research + +t + +Fast-Adapt Model Drives Efficient Innovation + +Expedites Time-to-Shelf by Translating +Innovation from Multinational CPGs +into Private Label Launches Using +Real-Time Market Intel + +Handi Foods’ Nimble and Flexible +Manufacturing Allows the Company to +Swiftly Implement New Innovations +into Production + +FY27+ + +✓ Potato-Based + +✓ Corn-Based + +✓ Brioche Crackers +✓ Functional Product + +✓ On-Trend Seasonings +✓ SnackHappy Brand + +Crackers + +Formats + +Note: Fiscal year end for the company is July 31. + +Crackers + +53 + + t + +Sophisticated Innovation Process from Start to Finish + +Opportunity +Identification + +Concept Development + +Commercialization + +▪ Customer request or +internal innovation + +▪ Cross-functional kickoff & +project timeline + +▪ Opportunity analysis: +volume, value, feasibility + +▪ Benchtop samples & +packaging format +development + +▪ Artwork development and +approval (internal & +external) + +▪ Purchase orders placed +for ingredients and +packaging + +▪ Systems setup, final capex +approval, and BOM +completion + +▪ Production run with +quality controls + +in +▪ Review actuals vs BU: +revenue, margin, volumes +▪ Analyze complexity + +Po + +▪ Plant trials with +internal & external sample +approvals + +Post-Launch Analysis + +▪ Final packaging sign-off +and forecast entry + +▪ Micro/allergen hold (if +applicable) + +▪ Capture lessons learned +for future projects + +▪ Shipment to customer + +ue + +▪ Input from relevant +cross-functional teams + +Launch + +▪ Project costing and P&L +creation + +1 + +Bl + +Product Development Process + +Bench-Top Process +R&D lab with mixers, cutters, +ovens, etc.; kitchen-scale proxy +for commercial production. +Samples developed as concepts +for internal & external review + +2 + +Line Trial +Validation of bench-top process +using small batches through the +full production process; +confirms scalability + +3 + +Pre-Production +Full production run; bill of +materials locked, usage and +costing understood; product +approved for launch + +4 + +Full-Scale Production +Commercial launch-ready +production + +54 + + Unmatched Bluechip Innovation Expertise +Team Overview + +John Dobie + +in + +Vice President, Operations + +Director of R&D + +Po + +Handi Foods’ R&D and Innovation team brings +together food scientists, technicians, and +experienced professionals with deep +expertise in flavors, ingredients, product +development, and testing to deliver +tailored products to its customers + +t + +Qualified and Proven R&D Team + +(4+ Years with Handi Foods) + +R&D Employee 1 + +Net Sales by Innovation Cohort +($ in Millions, CAD) + +54.9 + +58.8 + +57.1 + +FY23A + +FY24A + +6.6 + +37.4 + +43.5 + +FY21A + +FY22A + +FY2021A and Prior + +% from New +Innovation(1) + +$90.8 +3.5 +15.9 +2.4 +11.9 + +FY2022A + +13.1% + +FY2023A + +24.2% + +Olde York +Potato Chips + +Key Focus Areas: + +Bl + +$37.4 + +$72.4 +3.2 +14.3 + +$79.9 +4.6 +3.4 +13.1 + +ue + +$50.0 + +(3+ Years with Handi Foods) + +FY25A + +FY2024A + +26.5% + +FY2025A + +37.1% + +Note: Fiscal year end for the company is July 31. +(1) Represents % of FY gross sales. Represents SKUs introduced after FY2021A. + +Technology & +Innovation + +Scalable Supply & +Infrastructure + +Customer Insights +55 + + Case Study: First-Ever Innovation – Pretzelized + +t + +Excellence in Innovation Leading to a Deep Customer Relationship + +▪ Pretzelized is on a mission to “’Pretzelize’ America’s Favorite Snacks” + +Prior Projects + +in + +▪ Pretzelized was founded by prolific snack innovators Jason Cohen and Sam Kestenbaum + +Po + +▪ Handi Foods and Pretzelized worked collaboratively to commercialize concept in less than 18 months with +30+ SKUs being produced + +6 Pretzel Chips +and Crackers SKUs + +4 Additional SKUs + +▪ Pretzelized has achieved significant distribution in grocery, club, and is just getting started + +Handi Foods’ Partnership with Pretzelized + +ue + +Pretzelized Projected Revenue Growth(1) + +Initial discussions with founders in 2018 + +CAGR: 31% + +Bl +Long-term sole source agreement + +FY26E + +FY27P + +Note: Fiscal year end for the company is July 31. +(1) Represents Handi Foods gross sales to Pretzelized. + +FY28P + +FY29P + +FY30P + +Confidential, transformative product +innovation underway + +Mar - Jun +2024 +Jun +2024 + +4 Additional SKUs + +Jul - Dec +2024 + +11 Additional SKUs + +Jan - May +2025 + +3 Additional SKUs + +Jun - Jul +2025 + +Reapproached in 2022 once capacity +became available at Handi Foods +First order shipped March 2024 + +FY25A + +Introduced Pretzel +Chip Snackers + +Mar +2024 + +56 + + Case Study: ‘Snacking Done Right’ – H-E-B + +t + +Collaborative Relationship Resulting in a Broad and Entrenched Private Label Program + +in + +▪ Excellent example of the Handi Foods ‘Snacking Done Right’ go-to-market proposition in action + +▪ 15+ year relationship with H-E-B expanded in 2019 with award of pita chips business, now the broadest +category offering in the market + +Po + +▪ Proven track record meeting H-E-B’s rigorous standards supported by entrenched cross-functional +relationships across sales, QA, R&D, operations, and service + +▪ Pipeline expansion with CY Q1’26 test launch of three Pita Sticks SKUs under SnackHappy brand with +planned conversion to H-E-B private label + +CAGR: 23% + +Mature and Integrated Relationship + +ue + +H-E-B Historical and Projected Performance(1) + +H-E-B High +Standards + +Bl + +Handi Foods’ +MultiFunctional +Connectivity +and Focus + +FY19A FY20A FY21A FY22A FY23A FY24A FY25A FY26E +Note: Fiscal year end for the company is July 31. +(1) Represents Handi Foods gross sales to H-E-B. + +2 Central Market +Crackers SKUs + +Snacking Done Right +▪ Quality product +▪ Responsible pricing +▪ Ease of Development +▪ Multi-functional customer +service + +Mature, +Collaborative, +and Rewarding +Business +Relationship + +Won Pita Chips +Business (9 SKUs) + +2010 + +Mar +2019 + +2 Convenience +SKUs Launched + +Mar +2020 + +3 Sweet SKUs +Launched + +Mar +2021 + +Moved H-E-B +Production to +Newkirk + +Sep +2025 + +3 Sticks +Launching + +Q1 +2026 + +57 + + Gross Revenue by Channel(1) + +Grocery + +FY2025A + +41% + +Grocery + +Private Label Grocers + +Po + +35% +Private Label Grocers + +Net Revenue by +Customer Type(1) + +Brand + +Grocery + +in + +14% + +Private Label Grocers + +Whitespace + +t + +10% + +Brand(1) + +29% + +30% + +12% + +Mass + +31% + +FY2025A +69% + +Private +Label + +5% + +ue + +Club + +Private Label(1) + +Club + +Bl + +Mass + +Handi Foods is Aligned with Leading +Retailers Across North America + +10% + +14% + +91% of Total FY2025A Gross Sales are Generated from +Customers where Handi Foods is the Sole Source Supplier + +Note: Fiscal year end for the company is July 31. +(1) Percentages represent % of total FY2025A gross sales. +(2) Represents Handi Foods’ developing categories’ 3-year potential. + +58 + + Entrenched Relationships with Top Customers + +Customer + +Geography + +Segment + +Channel + +Product +Offering + +Tenure + +Customer 1 + +U.S. + +Private Label + +Private Label +Grocers + +Cracker + +10+ + +Customer 2 + +U.S. + +Brand + +Club / Grocery + +Pretzel Chips + +Customer 3 + +U.S. + +Private Label + +Grocery + +Pressed Chips, +Crackers, Puffs + +Customer 4 + +Canada + +Brand + +Club / Grocery + +Customer 5 + +U.S. + +Private Label + +Private Label +Grocers + +Customer 6 + +U.S. + +Private Label + +Mass + +Private Label + +Customer 8 + +Canada + +Private Label + +Customer 9 + +U.S. + +Private Label + +Customer 10 + +U.S. + +Private Label + +Top 10 Total Gross Sales +All Other +Total Gross Sales +Note: Fiscal year end for the company is July 31. +(1) Represents FY2025A. + +18.0% + +2 + +$16.3 + +18.0% + +10+ + +$9.9 + +10.9% + +in + +Top 10 Customers +Gross Sales CAGR +(FY2023A – FY2025A) + +77 + +Po +Crackers + +10+ + +$8.7 + +9.6% + +Crackers + +10+ + +$8.1 + +8.9% + +Unpressed +Chips + +5+ + +$5.9 + +6.5% + +Grocery + +Pressed +Chips + +5+ + +$3.1 + +3.4% + +Grocery + +Crackers, Bits + +15+ + +$2.9 + +3.2% + +Private Label +Grocer + +Crackers + +5+ + +$2.7 + +3.0% + +Grocery + +14.4% + +t +$16.3 + +ue + +U.S. + +% of FY25A +Gross Sales + +Bl + +Customer 7 + +FY25A Gross +Sales ($M)(1) + +Crackers + +5+ + +$2.7 + +3.0% + +$76.6 + +84.4% + +$14.2 + +15.6% + +$90.8 + +100% + +Unique SKUs with +Top 10 Customers + +~8 Years + +Average Tenure for +Top 10 Customers + +Meaningful +Relationships + +Longstanding, Direct, +Top-to-Top Relationships +with Top Customers + +59 + + t +in +Po +ue + +Operational Excellence + +Bl + +6 + + Facilities Overview +Norelco + +Status + +15 Newkirk Ct. Brampton, ON + +▪ + +BRC AA accredited + +Address + +Lease expires Sep 2053 + +▪ + +26 shipping / receiving +doors + +Status + +▪ + +3 high-capacity lines(1) + +Square Footage + +46,000 sq. ft. + +▪ + +Room for 2 additional +lines + +Production Lines + +L3, L4, and L5 + +▪ + +40-foot ceilings + +Utilization (FY25A) + +64% + +Inclusive of 2 x 10-year extensions + +108,000 sq. ft. + +Production Lines + +L6, L7, and L8 (CY1Q’26) + +Utilization (FY25A) + +58% + +ABILITY TO PRODUCE +SKUs ACROSS +VERSATILE LINES + +▪ + +BRC AA+ accredited + +Lease expires Sep 2037 + +▪ + +4 shipping / receiving +doors + +▪ + +3 production lines +(incl. 2 high-capacity lines) + +▪ + +28-foot ceilings + +Inclusive of 2 x 5-year extensions + +Bl + +Square Footage + +190 Norelco Dr. Toronto, ON + +ue + +Address + +Po + +in + +t + +Newkirk + +AVAILABLE CAPACITY +TO SUPPORT FUTURE +GROWTH + +(1) Includes the third, high-capacity line (L8) to be installed in CY1Q’26. + +RECENT MEANINGFUL +INVESTMENTS ACROSS +FACILITIES + +MODERN, HIGHLYAUTOMATED +OPERATION +61 + + Well-Invested Facilities with Numerous High-Capacity Lines +Line 5 + +Line 6 + +Line 7 + +Norelco + +Norelco + +Norelco + +Newkirk + +Newkirk + +Newkirk + + + + + + + + + + + +FY2024 + +FY2024 + +CYQ1’26 + + + + + + + + + + + + + +High-Capacity Line +FY2014 + +FY2021 + +FY2022 + + + + + + + + +Bag in Box + + + + + + + +Stand-Up +Resealable Bag + + + +Form-Seal Bag + + + +Crackers +Chips + +Puffs & Bits + +Formats + +Production Capacity (KGs)(1) + +1 + +Six Production Lines +Across Two Facilities +Five modern high-capacity +lines installed within the last +five years, enabling efficient, +large-scale manufacturing + +1.8M + +2 + + + + +ue + +Pretzel Chips + + + + + + + + + + + +3.6M + +3.6M + +4.0M + +4.0M + +4.0M + +FY2026E Production +Capacity: 15.4 Million KGs +Based on continuous 24-hour +operations, structured around two +12-hour shifts, 5 days per week + +3 + +FY2026E Utilization 65%+ +Significant capacity to support +near-term volume growth +without additional +infrastructure investment + +Bl + +Products + + + +** + + + + +Po + +Year Installed + +t + +Line 4 + +in + +Plant + +Line 3 + +Future +Line 8 + +4 + +Line 8 Commissioned for +CY1Q’26 +Newly ordered line will further +expand capacity, specifically +targeted to support continued +pretzel chip growth + +(1) Assumes FY2027P – FY2030P production schedule of two 12-hour shifts, 6 days per week, at current production speed. Includes allowances for changeovers and mechanical downtime. +** Pretzel chip production capabilities would be unlocked with a capex light investment through introduction of an additional cooker. + +62 + + Overview of Handi Foods’ Production Lines +Norelco +Line 4 + +Line 5 + +t + +Line 3 + +▪ Year Installed: FY2022 +▪ Equipment +Manufacturer: Reading +Bakery Systems +▪ Nameplate Speed: 600 +KGs per hour +▪ No. of SKUs: 22 +▪ No. of Flavor Profiles: +12 + +▪ Year Installed: FY2021 +▪ Equipment +Manufacturer: Reading +Bakery Systems +▪ Nameplate Speed: 600 +KGs per hour +▪ No. of SKUs: 18 +▪ No. of Flavor Profiles: 7 + +Po + +in + +▪ Year Installed: FY2014 +▪ Equipment +Manufacturer: Sabitech +& Lanly +▪ Nameplate Speed: 250 +KGs per hour +▪ No. of SKUs: 41 +▪ No. of Flavor Profiles: +25 + +Line 6 + +ue + +Newkirk + +Line 7 + +▪ Year Installed: FY2024 +▪ Equipment +Manufacturer: Reading +Bakery Systems +▪ Nameplate Speed: 600 +KGs per hour +▪ No. of SKUs: 17 +▪ No. of Flavor Profiles: 10 + +Bl + +▪ Year Installed: FY2024 +▪ Equipment +Manufacturer: Reading +Bakery Systems +▪ Nameplate Speed: 600 +KGs per hour +▪ No. of SKUs: 17 +▪ No. of Flavor Profiles: +11 + +Line 8 + +Image TBU + +▪ Year Installed: CY1Q’26 +▪ Equipment +Manufacturer: Reading +Bakery Systems +▪ Nameplate Speed: 600 +KGs per hour + +63 + + Newkirk Facility Overview +Facility Overview + +Optimized Facility Design +Indoor Bulk Silo System Efficient for +Ingredient Delivery + +in + +t + +“End State” Design Process + +Separate Storage Areas for +Ingredients and Packaging + +3000 KVA Upgrade + +Capacity to Receive at +Both Ends of Building + +Po + +Easy Employee Flow to Facilitate +200 Full-Time Employees + +Oversized QA Lab Facilities to +Support 5-Line Operation + +Year Built + +Annual Rent + +Employees(1) + +Lease Through + +Brampton, +ON + +2024 + +~$2.8M + +84 + +2053(2) + +Volume (FY2025A) +Total Capacity +(KGs) + +6.7M+ + +▪ Custom-designed bakery from the ground up to optimize +manufacturing meeting Handi Foods’ specific product flow and +production needs +▪ Transformed a new building shell into a fully customized bakery in +under 10 months, launching two high-capacity lines + +Total Production + +Crackers + +▪ ~$30M of recent capex investments: + +Bl + +(KGs in Millions) + +Snapshot + +ue + +Location + +Seamless Layout and +Space Designation + +1.7 +KGs + +3.9M +0.5 +KGs + +1.8 +KGs + +Chips + +Pretzel +Chips + +‒ Line 8 is on track to be installed and begin production in CYQ1’26 with +~4.0M KGs of capacity(3) + +▪ Facility has ample room for two additional production lines amounting +to ~8.0M KGs of incremental capacity(3) + +Note: Financials in CAD. Fiscal year end for the company is July 31. +(1) Headcount as of August 31, 2025. Includes 82 full-time and 2 part-time employees. +(2) Inclusive of two 10-year lease extensions. +(3) Assumes FY2027P – FY2030P production schedule of two 12-hour shifts, 6 days per week, at current production speed. Includes allowances for changeovers and mechanical downtime. + +64 + + Norelco Facility Overview +Facility Overview + +Volume by Product + +t + +(KGs in Millions) + +in + +Decreased utilization with +opening of Newkirk facility + +Crackers + +Chips + +Other + +Po + +4.8 KGs +0.1 KGs + +Year Built + +Annual Rent + +Employees(1) + +Lease Through + +Toronto, ON + +2014 + +~$750k + +129 + +2037(2) + +4.7 KGs + +4.8 KGs +0.1 KGs +1.3 KGs + +5.2 KGs + +ue + +Location + +Snapshot + +5.4 KGs +0.1 KGs +0.2 KGs + +3.5 KGs + +Bl + +▪ Original facility with three production lines , including two +high-capacity lines, with the capacity for ~9.1M(3) KGs annually + +▪ Facility renovations in 2020 added 6,800 sq. ft. of production space +▪ Additional air flow and heat management investment of $224K +deployed in 2024 + +▪ Expanded production capabilities with pizza and mini pita products + +Total +Capacity + +FY2023A + +FY2024A + +FY2025A + +~7.0 KGs + +~7.6 KGs + +~7.6 KGs + +Note: Financials in CAD. Fiscal year end for the company is July 31. +(1) Headcount as of August 31, 2025. Includes 121 full-time and 8 part-time employees. +(2) Inclusive of two 5-year lease extensions. +(3) Assumes FY2027P – FY2030P production schedule of two 12-hour shifts, 6 days per week, at current production speed. Includes allowances for changeovers and mechanical downtime. + +65 + + Unwavering Commitment to Food Safety +and Quality Assurance + +Hazard Analysis and Critical +Control Points (HACCP) + +BRC AA+ and BRC AA certified facilities +equipped to produce Kosher and +Organic Certified Products + +in + +✓ Allergen Control Programs + +t + +Food Safety and Quality Assurance is at the Forefront of Handi Foods’ Operations + +Qualifications, +Registrations, & Licensing + +Critical + +Food Safety & Quality +Assurance Function +Staffed by Experienced +Professionals Holding +Advanced Degrees in +Food Science, +Agricultural +Chemistry, and +Biotechnology, and +Chemical Engineering + +Control + +Points + +Zero + +Certificate of +Analysis Review +for Raw Materials + +ue + +Analysis + +✓ Product Recall and Traceability + +Voluntary or Mandatory Recalls +in Company History + +13 + +Visual Checks +During Receipt +and Mixing + +Final Product +Testing + +▪ +▪ +▪ +▪ +▪ +▪ +▪ +▪ +▪ +▪ + +10 Piece Weight Check +Dimension Check +Net Weight Check +Breakage % Check +Metal Detection +Bag Seal Testing +Salt % Test +Moisture Test +Sensory Check +Quality Assurance +Checks + +Bl + +Hazard + +Po + +✓ Microbiological Testing + +Dedicated Quality +Assurance Professionals + +17 + +Dedicated Sanitation +Professionals + +Temperature and +Weight Checks +During Production + +BRCGS Food Safety (BRC AA Certified) + +U.S. FDA Registered + +Health Canada (SFCR License) + +66 + + Deep and Tenured Relationships with High Quality +Suppliers and Redundancy Across the Supply Base + +Type + +Supplier 1 + +Canada + +Ingredients + +Flour + +15+ + +Supplier 2 + +Canada + +Packaging + +Cartons + +15+ + +Supplier 3 + +Canada + +Packaging + +Corrugate + +10+ + +Supplier 4 + +Canada + +Ingredients + +Oil + +Supplier 5 + +Canada + +Ingredients + +Supplier 6 + +Canada + +Ingredients + +Supplier 7 + +Canada + +Supplier 8 + +$6.1 + +18.7% + +$5.6 + +17.2% + +$4.1 + +12.5% + +$3.0 + +9.2% + +Oil & +Conditioners + +15+ + +$1.2 + +3.7% + +Seasonings + +5+ + +$1.2 + +3.6% + +Packaging + +Film & +Pouches + +5+ + +$1.2 + +3.6% + +Canada + +Packaging + +Film & +Pouches + +10+ + +$1.1 + +3.4% + +Supplier 9 + +U.S. + +Packaging + +Corrugate + +1 + +$1.1 + +3.3% + +Supplier 10 + +U.S. + +All Other +Total Purchases +Note: Fiscal year end for the company is July 31. +(1) Represents FY2025A. Dollars in CAD. + +Bl + +Total Top 10 Purchases + +ue + +4 + +Ingredients + +32 + +Unique Suppliers +in FY2025A + +t + +Segment + +% of FY25A +Purchases + +in + +Geography + +FY25A +Purchases ($M)(1) + +~9 Years +Average Top 10 +Supplier Tenure + +Po + +Customer + +Tenure +(Years) + +Seasonings + +4 + +$1.1 + +3.2% + +$25.6 + +78.4% + +$7.0 + +21.6% + +$32.6 + +100% + +~83% + +Canadian Sourced +Inputs + +Flexible + +Supply Chain to Fit the +Needs of Handi Foods’ +Customers + +67 + + Experienced and Proven Management Team + +John Dobie + +VP Operations +(7+ Years with Handi Foods) + +Chief Financial Officer +(1+ Years with Handi Foods) + +17+ +Years +Exp. + +t + +17+ +Years +Exp. + +Monika Sharma + +Director of Food Safety & QA +(10+ Years with Handi Foods) + +Nirav Shah + +Director of R&D +(4+ Years with Handi Foods) + +Sepideh +Mahmoudzadeh + +Director of Procurement +(5+ Years with Handi Foods) + +INCREASED NET SALES BY ~2.5X +SINCE FY2021A AND GREW +PRODUCTION SPACE TO 154K +SQ. FT. WITH THE OPENING OF +THE NEWKIRK FACILITY + +STEADFAST FOCUS ON SALES +GROWTH, R&D, AND +OPERATIONAL EXCELLENCE + +Bl + +HIGHLY EXPERIENCED +MANAGEMENT TEAM +CLASSICALLY TRAINED AT +LEADING BLUE-CHIP CPG +COMPANIES + +Marc Diamant + +12+ +Years +Exp. + +in + +President & +Chief Executive Officer +(7+ Years with Handi Foods) + +30+ +Years +Exp. + +ue + +Brian Arbique + +30+ +Years +Exp. + +Po + +40+ +Years +Exp. + +68 + + Skilled Workforce Fueling Efficient Operations +Headcount by Function(1) + +President & CEO +Brian Arbique + +1% + +t + +1% + +in + +3% + +2% + +Corporate Organizational Overview + +6% + +213 Total +Employees + +VP Operations +John Dobie + +58% + +Director of +Finance + +Director of +R&D + +3 +Employees + +2 +Employees + +13 +Employees + +QA +Supervisor + +Production +Manager + +Inventory +Coordinator + +10 +Employees + +Production (123) + +Operations (62) + +Quality Assurance (13) + +Corporate (7) + +Finance (4) + +Sales (3) + +IT Manager + +122 +Employee + +2 +Employees + +Director of +Purchasing + +5 Year Avg. +Tenure(2) + +Purchasing +Analyst + +Business +Development (2) + +Account Manager + +Maintenance +Manager + +H&S +Manager + +▪ + +18 +Employees + +CI Manager + +Non-unionized labor force with no previous +attempts or foreseeable plans of unionization + +▪ + +95% Full-Time / 5% Part-Time + +▪ + +Majority of hourly employees are in-house +workers (rather than agency) + +▪ + +The surrounding Brampton, ON area boasts a +robust and growing labor force of over 350k +workers + +Bl + +IT (1) + +‘All Hands’ Service Mentality and Multi-Functional +Response Drives Exceptional Customer Satisfaction + +Headcount as of August 31, 2025. +Represents average tenure for full-time employees only. + +Regulatory +Affairs + +Sanitation +Manager + +ue + +Customer +Service + +(1) +(2) + +Director, +FS & QA + +HR Manager + +Po + +29% + +CFO +Marc Diamant + +Shipping +Manager + +9 +Employees + +Demand +Planning + +CONFIDENTIAL | 69 + + t +in +Po +ue +Bl + +7 + +Financial Overview + + Basis of Financial Presentation +Basis of Presentation + +in + +t + +The following financial review summarizes the Company’s financial results for (i) the fiscal years ended July 31, 2023 (FY2023A), +July 31, 2024 (FY2024A), and July 31, 2025 (FY2025A); (ii) the forecast for the current year ending July 31, 2026 (FY2026E); and (iii) +the projected fiscal years ending July 31, 2027 – 2030 (FY2027P – FY2030P)(1). + +Po + +The financial information included herein for the historical periods, unless otherwise noted, are consistent with the Quality of +Earnings (“QoE”) report prepared by BDO Canada LLP for the periods beginning with FY2023A through FY2025A. Adjustments +were made for non-recurring, extraordinary and certain pro forma items in order to provide a more accurate depiction of the +Company’s normalized operating performance. These adjustments are explained on the EBITDA Adjustment Summary pages. + +ue + +Projections for FY2026E – FY2030P are based upon present factors influencing the Company’s business and future plans +developed by Management. Assumptions regarding future levels of revenue and profits are forward-looking and do not and +cannot take into account such factors as unforeseen changes in the market, entry into the market by new competitors, and +other risks inherent to the business. + +Bl + +The external financial statements were audited by KPMG LLP ("External Accountant”) and prepared in accordance with Canadian +accounting standards for private enterprises ("ASPE”). The audit reports for both fiscal periods stated that there were no issues +identified by the External Accountant which would indicate that the financial statements were not fairly presented in accordance +with ASPE. +Unless otherwise noted, all monetary amounts are presented in Canadian dollars. + +(1) + +FY2026E represents 10 months of forecasted performance. + +71 + + General Accounting Methodology +Volume of product sold, measured by weight in kilograms + +Gross Sales + +Product sales after returns + +Net Sales + +Gross sales less rebates and discounts + +Direct Cost of Sales + +Direct materials, direct labor and sales deductions (including outbound freight, sales broker commissions and customer rebates and discounts) + +Contribution + +Gross sales less direct cost of sales + +Factory Overhead + +Indirect labor, utilities, rent, repairs & maintenance, and other overhead expenses + +Gross Profit + +Contribution less factory overhead + +SG&A + +Remaining costs required to operate the business, including office overhead, sales and marketing costs and cash discounts from vendors + +Adj. EBITDA + +Gross Profit less SG&A; reflects QoE adjustments for non-recurring and one-time items (see pages 78 and 79 for additional detail) + +PF Adjustments + +Pro Forma adjustments related to the full year impact of cost savings implemented and realized in FY2026 Q1 (TradeAid Savings – Phase 1) validated by +BDO (see page 79 for further detail) + +PF Adj. EBITDA + +Adjusted EBITDA plus Pro Forma Adjustments + +Bl + +ue + +Po + +in + +t + +Total KG + +72 + + Historical And Projected Financial Performance +CAGR + +CAGR + +Projected + +Forecast + +Historical + +($ CAD and KGs in Millions) + +FY25A - FY30P +FY23A - FY25A +18.7% +9.9% + +7.4 + +8.0 + +8.9 + +FY2026E +10.4 + +FY2027P +13.1 + +FY2028P +15.8 + +FY2029P +18.6 + +FY2030P +21.1 + +Gross Sales +Rebates and Discounts +Net Sales + +$72.4 +(0.5) +$71.8 + +$79.9 +(0.6) +$79.3 + +$90.8 +(0.7) +$90.1 + +$101.0 +(0.7) +$100.3 + +$125.9 +(0.7) +$125.2 + +$152.4 +(1.4) +$151.0 + +$178.7 +(2.2) +$176.5 + +$202.9 +(2.4) +$200.4 + +Freight, Transportation, and Commissions +Direct Materials +Direct Labor and Benefits +Total Direct Cost of Sales + +$4.5 +26.4 +7.3 +$38.3 + +$4.0 +25.6 +7.9 +$37.5 + +$3.9 +30.8 +8.3 +$43.1 + +$3.6 +35.3 +9.9 +$48.8 + +$4.3 +45.3 +12.4 +$62.0 + +$5.5 +54.5 +15.0 +$75.0 + +$6.3 +64.5 +17.7 +$88.5 + +$7.4 +73.9 +20.0 +$101.3 + +(6.6%) +8.1% +6.5% +6.1% + +13.4% +19.1% +19.2% +18.6% + +Contribution +Contribution % Margin + +$33.6 +46.7% + +$41.8 +52.7% + +$47.0 +52.2% + +$51.5 +51.4% + +$63.2 +50.5% + +$76.0 +50.3% + +$88.0 +49.9% + +$99.2 +49.5% + +18.4% + +16.1% + +Wages & Benefits +Utilities +Rent +Repairs & Maintenance +Other Overhead Expenses +Total Factory Overhead + +$3.9 +1.4 +1.1 +1.0 +3.1 +$10.6 + +$5.6 +1.0 +3.0 +1.2 +3.2 +$14.0 + +$6.1 +1.1 +3.3 +1.0 +3.2 +$14.8 + +$6.2 +1.3 +3.5 +1.1 +3.7 +$15.7 + +$7.9 +1.6 +3.6 +1.8 +4.6 +$19.5 + +$8.2 +1.9 +3.7 +2.1 +5.1 +$21.0 + +$8.5 +2.3 +3.9 +2.4 +5.6 +$22.6 + +$8.8 +2.6 +4.0 +2.7 +6.1 +$24.1 + +25.2% +(10.2%) +70.3% +2.3% +0.7% +18.2% + +7.5% +17.8% +3.8% +20.4% +13.7% +10.2% + +Gross Profit +Gross Profit % Margin + +$23.0 +32.0% + +$27.8 +35.1% + +$32.2 +35.7% + +$35.8 +35.7% + +$43.7 +34.9% + +$55.0 +36.4% + +$65.4 +37.1% + +$75.1 +37.5% + +18.4% + +18.5% + +Payroll +Bonus Expense +Data Processing +Professional Fees +Other SG&A Expenses +Total SG&A + +$0.7 +1.4 +0.4 +0.8 +0.8 +$4.0 + +Other Income / (Expense) + +0.4 + +(1) + +Pro Forma TradeAid Adjustment +Pro Forma Adj. EBITDA +PF Adj. EBITDA % Margin + +17.4% +28.0% +17.3% + +ue + +Po + +in + +t + +12.0% +14.4% +12.0% + +$0.7 +1.3 +0.5 +0.5 +0.7 +$3.7 + +$1.0 +1.3 +0.6 +0.4 +0.8 +$4.1 + +$1.4 +1.4 +0.7 +0.5 +0.7 +$4.8 + +$1.4 +1.5 +0.8 +0.5 +1.0 +$5.2 + +$1.7 +1.6 +0.8 +0.6 +1.1 +$5.7 + +$1.8 +1.7 +0.8 +0.6 +1.1 +$6.1 + +$1.9 +1.8 +0.8 +0.6 +1.2 +$6.3 + +22.8% +(1.7%) +12.5% +(26.0%) +(0.4%) +0.9% + +12.2% +6.6% +8.3% +7.4% +9.3% +8.9% + +0.5 + +0.2 + +- + +- + +- + +- + +- + +(18.9%) + +- + +$19.3 +26.8% + +$24.7 +31.1% + +$28.3 +31.4% + +$31.0 +30.9% + +$38.5 +30.8% + +$49.2 +32.6% + +$59.4 +33.6% + +$68.8 +34.3% + +21.2% + +19.4% + +- + +- + +0.5 + +- + +- + +- + +- + +- + +- + +- + +$19.3 +26.8% + +$24.7 +31.1% + +$28.8 +31.9% + +$31.0 +30.9% + +$38.5 +30.8% + +$49.2 +32.6% + +$59.4 +33.6% + +$68.8 +34.3% + +22.2% + +19.0% + +Bl + +Adj. EBITDA +Adj. EBITDA % Margin + +FY2025A + +FY2024A + +FY2023A +Total KGs + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. Assumes U.S. denominated sales in the budget and projection periods (FY2026E – FY2030P) are converted to $CAD at a rate of $1.375 $CAD to $1 $USD. +(1) Please see Page 79 for additional TradeAid adjustment detail. + +73 + + Historical And Projected Financial Performance: FY2023A – FY2024A +CAGR +8.0 + +Gross Sales +Rebates and Discounts +Net Sales + +$72.4 +(0.5) +$71.8 + +$79.9 +(0.6) +$79.3 + +10.4% +6.7% +10.4% + +Freight, Transportation, and Commissions +Direct Materials +Direct Labor and Benefits +Total Direct Cost of Sales + +$4.5 +26.4 +7.3 +$38.3 + +$4.0 +25.6 +7.9 +$37.5 + +(11.3%) +(3.1%) +8.1% +(1.9%) + +Contribution +Contribution % Margin + +$33.6 +46.7% + +$41.8 +52.7% + +24.5% + +Wages & Benefits +Utilities +Rent +Repairs & Maintenance +Other Overhead Expenses +Total Factory Overhead + +$3.9 +1.4 +1.1 +1.0 +3.1 +$10.6 + +$5.6 +1.0 +3.0 +1.2 +3.2 +$14.0 + +Gross Profit +Gross Profit % Margin + +$23.0 +32.0% + +$27.8 +35.1% + +Payroll +Bonus Expense +Data Processing +Professional Fees +Other SG&A Expenses +Total SG&A + +$0.7 +1.4 +0.4 +0.8 +0.8 +$4.0 + +$0.7 +1.3 +0.5 +0.5 +0.7 +$3.7 + +Other Income / (Expense) + +0.4 + +Pro Forma TradeAid Adjustment +Pro Forma Adj. EBITDA +PF Adj. EBITDA % Margin + +(1) + +Total Net Sales: + +Total Net Sales increased $7.5M, or 10.4%, from $71.8M in FY2023A to $79.3M in +FY2024A. This increase was driven by (i) volume expansion within existing top +customers such as Trader Joe’s and Lidl, (ii) Increased ASP driven by turnkey +program at Hain Canada, and (iii) the introduction of 11 inaugural Pretzelized +SKUs in March 2024 (FY2024A) + +42.4% +(29.6%) +162.0% +22.4% +2.0% +31.8% +21.2% + +Gross Profit increased $4.8M, or 21.2%, from $23.0M in FY2023A to $27.8M in +FY2024A. Gross Profit Margin increased 310bps from 32.0% in FY2023A to 35.1% +in FY2024A. The improvement was partially driven by increased pricing in +response to commodity-related inflation, following similar increases from +branded competitors, resulting in improved material margins. + +ue + +3.5% +(6.1%) +5.7% +(34.3%) +(9.9%) +(9.2%) + +Gross Profit: + +0.5 + +PF Adjusted EBITDA: + +PF Adjusted EBITDA increased $5.4M, or 28.0%, from $19.3M in FY2023A to +$24.7M in FY2024A. This increase was driven by the Gross Profit improvements +mentioned above as well as fixed operating cost leverage from Net Sales +growth. PF Adjusted EBITDA Margin increased 430 bps from 26.8% in FY2023A +to 31.1% in FY2024A. + +Bl + +Adj. EBITDA +Adj. EBITDA % Margin + +Management Commentary + +Po + +7.4 + +FY23A - FY24A +8.4% + +Total KGs + +FY2024A + +t + +Historical +FY2023A + +in + +($ CAD and KGs in Millions) + +$19.3 +26.8% + +$24.7 +31.1% + +- + +- + +$19.3 +26.8% + +$24.7 +31.1% + +28.0% + +28.0% + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2023A – FY2025A represents QoE adjusted financials. +(1) Please see Page 79 for additional TradeAid adjustment detail. + +74 + + Historical And Projected Financial Performance: FY2024A – FY2025A +CAGR +8.9 + +Gross Sales +Rebates and Discounts +Net Sales + +$79.9 +(0.6) +$79.3 + +$90.8 +(0.7) +$90.1 + +13.6% +22.6% +13.6% + +Freight, Transportation, and Commissions +Direct Materials +Direct Labor and Benefits +Total Direct Cost of Sales + +$4.0 +25.6 +7.9 +$37.5 + +$3.9 +30.8 +8.3 +$43.1 + +(1.7%) +20.5% +5.0% +14.8% + +Contribution +Contribution % Margin + +$41.8 +52.7% + +$47.0 +52.2% + +12.5% + +Wages & Benefits +Utilities +Rent +Repairs & Maintenance +Other Overhead Expenses +Total Factory Overhead + +$5.6 +1.0 +3.0 +1.2 +3.2 +$14.0 + +$6.1 +1.1 +3.3 +1.0 +3.2 +$14.8 + +Gross Profit +Gross Profit % Margin + +$27.8 +35.1% + +$32.2 +35.7% + +Payroll +Bonus Expense +Data Processing +Professional Fees +Other SG&A Expenses +Total SG&A + +$0.7 +1.3 +0.5 +0.5 +0.7 +$3.7 + +$1.0 +1.3 +0.6 +0.4 +0.8 +$4.1 + +Other Income / (Expense) + +0.5 + +Pro Forma TradeAid Adjustment +Pro Forma Adj. EBITDA +PF Adj. EBITDA % Margin + +(1) + +Total Net Sales: + +Total Net Sales increased $10.8M, or 13.6%, from $79.3M in FY2024A to $90.1M +in FY2025A. This increase was driven by rapid increase of the Pretzelized +business, with the addition of 17 new SKUs. + +10.1% +14.5% +10.7% +(14.6%) +(0.6%) +5.9% +15.8% + +Gross Profit increased $4.4M, or 15.8%, from $27.8M in FY2024A to $32.2M in +FY2025A. Gross Profit Margin increased 60bps from 35.1% in 2024A to 35.7% in +2025A. This increase was driven by fixed operating cost leverage from Net Sales +growth as the Newkirk facility ramped up production. +PF Adjusted EBITDA + +ue + +45.8% +2.8% +19.8% +(16.8%) +10.2% +12.1% + +Gross Profit + +0.2 + +PF Adjusted EBITDA increased $4.1M, or 16.6%, from $24.7M in FY2024A to +$28.8M in FY2025A. This growth was driven primarily by increased volume +growth from Pretzelized. PF Adjusted EBITDA Margin increased 80bps from +31.1% in FY2024A to 31.9% in FY2025A as a result of fixed operating cost +leverage, as mentioned above. Additionally, TradeAid-supported supply chain +initiatives launched and being realized in FY1Q’26, contributed an estimated +$458K of Pro Forma FY2025 savings, and margin uplift of 80bps. + +Bl + +Adj. EBITDA +Adj. EBITDA % Margin + +Management Commentary + +Po + +8.0 + +FY24A - FY25A +11.5% + +Total KGs + +FY2025A + +t + +Historical +FY2024A + +in + +($ CAD and KGs in Millions) + +$24.7 +31.1% + +$28.3 +31.4% + +- + +0.5 + +$24.7 +31.1% + +$28.8 +31.9% + +14.8% + +16.6% + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2023A – FY2025A represents QoE adjusted financials. +(1) Please see Page 79 for additional TradeAid adjustment detail. + +75 + + Historical And Projected Financial Performance: FY2025A – FY2026E +Forecast + +CAGR + +FY2025A + +FY2026E +10.4 + +Gross Sales +Rebates and Discounts +Net Sales + +$90.8 +(0.7) +$90.1 + +$101.0 +(0.7) +$100.3 + +11.2% +(1.8%) +11.3% + +Freight, Transportation, and Commissions +Direct Materials +Direct Labor and Benefits +Total Direct Cost of Sales + +$3.9 +30.8 +8.3 +$43.1 + +$3.6 +35.3 +9.9 +$48.8 + +(9.5%) +14.5% +18.9% +13.2% + +Contribution +Contribution % Margin + +$47.0 +52.2% + +$51.5 +51.4% + +9.5% + +Wages & Benefits +Utilities +Rent +Repairs & Maintenance +Other Overhead Expenses +Total Factory Overhead + +$6.1 +1.1 +3.3 +1.0 +3.2 +$14.8 + +$6.2 +1.3 +3.5 +1.1 +3.7 +$15.7 + +Gross Profit +Gross Profit % Margin + +$32.2 +35.7% + +$35.8 +35.7% + +Payroll +Bonus Expense +Data Processing +Professional Fees +Other SG&A Expenses +Total SG&A + +$1.0 +1.3 +0.6 +0.4 +0.8 +$4.1 + +$1.4 +1.4 +0.7 +0.5 +0.7 +$4.8 + +Other Income / (Expense) + +0.2 + +Adj. EBITDA +Adj. EBITDA % Margin +Pro Forma TradeAid Adjustment +Pro Forma Adj. EBITDA +PF Adj. EBITDA % Margin + +(1) + +Management Commentary +Total Net Sales: + +Total Net Sales is expected to increase $10.2M, or 11.3%, from $90.1M in +FY2025A to $100.3M in FY2026E. This increase is driven by growth in large +accounts such as Trader Joe’s and Pretzelized. Sales growth slightly trails volume +growth given mix shift towards lower ASP products and investments made to +support the growth of key customers. + +0.4% +12.2% +6.5% +3.9% +16.1% +6.3% + +11.0% + +Gross Profit is expected to increase $3.6M, or 11.0%, from $32.2M in FY2025A to +$35.8M in FY2026E. Gross Profit Margin is expected to remain flat at 35.7% in +FY2025A and FY2026E. Gross Profit Margin benefitted from continued +operational leverage, partially offset by strategic investment in the Pretzelized +relationship to support the customer’s growth through increased brand building +initiatives. + +ue + +35.1% +6.1% +32.5% +27.1% +(10.3%) +16.0% + +Gross Profit: + +- + +PF Adjusted EBITDA: + +PF Adjusted EBITDA is expected to increase $2.2M, or 7.7%, from $28.8M in +FY2025A to $31.0M in FY2026E. PF Adjusted EBITDA Margin is expected to +decrease 100bps from 31.9% in FY2025A to 30.9% in FY2026E, driven by stable +gross profit margins and slightly higher operating expenses as the business +invested in personnel to support growth. + +Bl + +Total KGs + +Po + +8.9 + +FY25A - FY26E +16.8% + +t + +Historical + +in + +($ CAD and KGs in Millions) + +$28.3 +31.4% + +$31.0 +30.9% + +0.5 + +- + +$28.8 +31.9% + +$31.0 +30.9% + +9.4% + +7.7% + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2023A – FY2025A represents QoE adjusted financials. FY2026E represents Management estimates. +Assumes U.S. denominated sales in the budget and projection periods (FY2026E – FY2030P) are converted to $CAD at a rate of $1.375 $CAD to $1 $USD. +(1) Please see Page 79 for additional TradeAid adjustment detail. + +76 + + Historical And Projected Financial Performance: FY2026E – FY2030P +($ CAD and KGs in Millions) + +Forecast + +Total KGs + +FY2026E +10.4 + +FY2027P +13.1 + +FY2028P +15.8 + +FY2029P +18.6 + +FY2030P +21.1 + +FY26E - FY30P +19.2% + +Gross Sales +Rebates and Discounts +Net Sales + +$101.0 +(0.7) +$100.3 + +$125.9 +(0.7) +$125.2 + +$152.4 +(1.4) +$151.0 + +$178.7 +(2.2) +$176.5 + +$202.9 +(2.4) +$200.4 + +19.1% +36.8% +18.9% + +Freight, Transportation, and Commissions +Direct Materials +Direct Labor and Benefits +Total Direct Cost of Sales + +$3.6 +35.3 +9.9 +$48.8 + +$4.3 +45.3 +12.4 +$62.0 + +$5.5 +54.5 +15.0 +$75.0 + +$6.3 +64.5 +17.7 +$88.5 + +$7.4 +73.9 +20.0 +$101.3 + +19.9% +20.3% +19.2% +20.0% + +Contribution +Contribution % Margin + +$51.5 +51.4% + +$63.2 +50.5% + +$76.0 +50.3% + +$88.0 +49.9% + +$99.2 +49.5% + +17.8% + +Wages & Benefits +Utilities +Rent +Repairs & Maintenance +Other Overhead Expenses +Total Factory Overhead + +$6.2 +1.3 +3.5 +1.1 +3.7 +$15.7 + +$7.9 +1.6 +3.6 +1.8 +4.6 +$19.5 + +$8.2 +1.9 +3.7 +2.1 +5.1 +$21.0 + +$8.5 +2.3 +3.9 +2.4 +5.6 +$22.6 + +$8.8 +2.6 +4.0 +2.7 +6.1 +$24.1 + +Gross Profit +Gross Profit % Margin + +$35.8 +35.7% + +$43.7 +34.9% + +$55.0 +36.4% + +$65.4 +37.1% + +$75.1 +37.5% + +20.4% + +Payroll +Bonus Expense +Data Processing +Professional Fees +Other SG&A Expenses +Total SG&A + +$1.4 +1.4 +0.7 +0.5 +0.7 +$4.8 + +$1.4 +1.5 +0.8 +0.5 +1.0 +$5.2 + +$1.7 +1.6 +0.8 +0.6 +1.1 +$5.7 + +$1.8 +1.7 +0.8 +0.6 +1.1 +$6.1 + +$1.9 +1.8 +0.8 +0.6 +1.2 +$6.3 + +7.1% +6.7% +3.0% +3.0% +14.8% +7.2% + +Other Income / (Expense) + +- + +- + +- + +- + +- + +Pro Forma TradeAid Adjustment +Pro Forma Adj. EBITDA +PF Adj. EBITDA % Margin + +(1) + +CAGR + +t + +Management Commentary + +in + +Total Net Sales: + +Po + +9.4% +19.2% +3.1% +25.0% +13.1% +11.2% + +Total Net Sales is expected to increase $100.1M, from +$100.3M in FY2026E to $200.4M in FY2030P (18.9% CAGR). +This increase is driven by growth with key existing +customers through increased volumes and the cross-sell +of existing SKUs, new product development, and new +customer wins. +Gross Profit + +ue + +Gross Profit is expected to increase $39.3M, from $35.8M +in FY2026E to $75.1M in FY2030P (20.4% CAGR). Gross +Profit Margin is expected to increase 180bps from 35.7% +in 2026E to 37.5% in 2030P. This increase is driven by fixed +operating cost leverage from Net Sales growth. +PF Adjusted EBITDA +PF Adjusted EBITDA is expected to increase $37.8M from +$31.0M in FY2026E to $68.8M in FY2030P (22.1% CAGR). PF +Adjusted EBITDA Margin is expected to increase 340bps +from 30.9% in FY2026E to 34.3% in FY2030P driven by fixed +operating cost leverage, as mentioned above. + +Bl + +Adj. EBITDA +Adj. EBITDA % Margin + +Projected + +$31.0 +30.9% + +$38.5 +30.8% + +$49.2 +32.6% + +$59.4 +33.6% + +$68.8 +34.3% + +- + +- + +- + +- + +- + +$31.0 +30.9% + +$38.5 +30.8% + +$49.2 +32.6% + +$59.4 +33.6% + +$68.8 +34.3% + +22.1% + +22.1% + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. Assumes U.S. denominated sales in the budget and projection periods (FY2026E – FY2030P) are converted to $CAD at a rate of $1.375 $CAD to $1 $USD. +FY2026E – FY2030P represents Management estimates and projections. +(1) Please see Page 79 for additional TradeAid adjustment detail. + +77 + + Historical Pro Forma Adjustment Presentation +($ CAD in 000s) +$19,004 + +$21,505 + +$23,774 + +(2,164) + +1,327 + +1,920 + +Adjustments +Other (Income) / Expenses + +2 + +Facility Transition + +313 + +1,488 + +986 + +3 + +Non-Recurring Realized FX + +(68) + +(21) + +756 + +4 + +Other Non-Recurring Items + +1,881 + +193 + +527 + +5 + +Management Fee + +224 + +250 + +250 + +6 + +Non-Recurring Inventory Write-Off + +- + +- + +84 + +7 + +Executive Compensation + +8 + +Go-Forward Insurance + +9 + +Warehousing for Packaging Materials +Adj. EBITDA + +10 + +2 + +Represents Fenmar facility redundant rent & utilities, +closure expenses, excess gas costs from temporary +supplier, one-time R&D in Newkirk facility transition, and +severance costs + +ue +74 + +Pro Forma TradeAid Adjustment +Pro Forma Adj. EBITDA + +Represents unrealized FX (gain) / loss, non-recurring +investment income of $1.8M in FY2023A, a one-time +Ontario Manufacturing Investment Tax Credit of $1.6M +in FY2024A, loss on disposal of fixed assets of $975K in +FY2025A, and Scientific Research and Experimental +Development (SR&ED) tax credits + +- + +22 + +(149) + +(65) + +(0) + +155 + +- + +- + +268 + +3,172 + +4,545 + +$19,272 + +$24,677 + +$28,319 + +- + +- + +458 + +$19,272 + +$24,677 + +$28,777 + +3 + +Represents the removal of realized FX relating to +forward hedging contracts and a USD-denominated loan + +4 + +Represents other non-recurring items, including, but not +limited to, Newkirk facility gas line installation expenses, +cybersecurity related expenses, non-recurring +professional fees, temporary tariff expense and QA +misclassification addback, and Ironbridge acquisition +expenses + +Bl + +Total Adjustments + +1 + +Po + +1 + +t + +Reported EBITDA + +Adjustment Overview + +in + +FY2023A FY2024A FY2025A + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2023A – FY2025A represents QoE adjusted financials. + +78 + + Historical Pro Forma Adjustment Presentation (Cont’d) +($ CAD in 000s) +$19,004 + +$21,505 + +$23,774 + +Adjustments +1,327 + +1,920 + +Facility Transition + +313 + +1,488 + +986 + +3 + +Non-Recurring Realized FX + +(68) + +(21) + +756 + +4 + +Other Non-Recurring Items + +1,881 + +193 + +527 + +5 + +Management Fee + +224 + +250 + +250 + +6 + +Non-Recurring Inventory Write-Off + +- + +- + +84 + +7 + +Executive Compensation + +8 + +Go-Forward Insurance + +9 + +Warehousing for Packaging Materials +Total Adjustments +Adj. EBITDA + +10 + +74 + +Pro Forma TradeAid Adjustment +Pro Forma Adj. EBITDA + +7 + +Represents non-recurring inventory normalizations and +adjustments associated with Newkirk facility opening +Represents $44k and $22k of redundant CFO +compensation during transition periods in FY2023A and +FY2025A, respectively + +Po + +2 + +6 + +(2,164) + +Represents Ironbridge management fee of $21k per +month + +8 + +Represents go-forward insurance adjustments +accounting for additional coverage on new facility, +overall business growth, and trade receivables with +Export Development Canada + +ue + +Other (Income) / Expenses + +5 + +- + +22 + +(149) + +(65) + +(0) + +155 + +- + +- + +268 + +3,172 + +4,545 + +$19,272 + +$24,677 + +$28,319 + +- + +- + +458 + +$19,272 + +$24,677 + +$28,777 + +9 + +10 + +Represents additional 3PL warehousing costs in +FY2023A associated with Newkirk facility construction +The consulting firm TradeAid was engaged to support +supply chain optimization across targeted cost areas. +Phase 1 initiatives related to freight and warehousing +were implemented in early FY2026E and are resulting in +ongoing savings. The $458k reflects the annualized +FY2025A run-rate savings had those initiatives been in +place at the start of the year + +Bl + +1 + +t + +Reported EBITDA + +Adjustment Overview + +in + +FY2023A FY2024A FY2025A + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2023A – FY2025A represents QoE adjusted financials. + +79 + + Capital Expenditure and Production Summary +Total Capital Expenditures ($ CAD in 000s) + +Historical + +Budget + +Projected + +FY2024A + +FY2025A + +FY2026E + +FY2027P + +FY2028P + +FY2029P + +FY2030P + +$317 + +$902 + +$668 + +$1,000 + +$1,100 + +$1,200 + +$1,300 + +$1,400 + +Growth + +$8,763 + +$19,195 + +$3,174 + +1 $11,870 + +2 $12,150 + +$12,500 + +- + +Total Capital Expenditures + +$9,081 + +$20,098 + +$3,841 + +$12,870 + +$13,250 + +$3,550 + +$13,800 + +$1,400 + +Line 9 (Newkirk) +Line 10 (Newkirk) + +FY2023A +- + +FY2024A +- + +FY2025A +$1,385 +- + +FY2026E +$11,870 +- + +FY2027P +$12,150 +- + +FY2028P +$1,350 +$1,000 + +FY2029P +$12,500 + +FY2030P +- + +(Volume, KGs in 000s) + +FY2023A + +FY2024A + +FY2025A + +FY2026E + +FY2027P + +FY2028P + +FY2029P + +FY2030P + +Production +Max Volume(1)Capacity +% Utilization + +7,396 +9,641 + +8,017 +12,953 + +8,936 +14,290 + +10,435 +15,413 + +13,055 +21,191 + +15,767 +25,235 + +18,593 +26,582 + +21,088 +29,278 + +62% + +63% + +68% + +62% + +62% + +70% + +72% + +$2,350 + +4 + +in + +Growth Capital Expenditures ($ CAD in 000s) +Line 8 (Newkirk) + +3 + +Po + +Maintenance + +t + +FY2023A + +ue + +77% + +FY2026E Investment: Capital investment for the purchase and installation of the sixth production line (Line 8) at the Newkirk facility. $1.9M +has been remitted as of October 1, 2025. Installation is on track for completion in CY1Q’26 (March 2026) (2) + +2 + +Planned FY2027P Investment: Capital investment allocated for the purchase of the seventh production line (Line 9) at the Newkirk facility, +targeted for completion by end of FY2027 (July 2027)(2) + +3 + +Planned FY2028P Investment: Payment for Line 9 installation and capital investment required for the purchase of the eighth production line +(Line 10) to be installed by the end of CY1Q’28 (March 2028)(2) + +4 + +Final FY2028P Payment: Payment for Line 10 installation(2) + +Bl + +1 + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2023A – FY2025A represents QoE pro forma adjusted financials. +(1) FY2023A - FY2026E assumes current production schedule of two 12-hour shifts, 5 days per week. FY2027P – FY2030P assumes production schedule of two 12-hour shifts, 6 days per week. Includes +allowances for changeovers and mechanical downtime. +(2) Total cost for Line 8 estimated at $13.3M ($ CAD), total estimated cost for Lines 9 and 10 is $13.5M ($CAD). +(3) Incremental Growth Capex in FY2025A beyond the $1.4M for Line 8 includes an additional bagger, HVAC installation, racking systems and other investments in equipment and the facilities. + +80 + + Working Capital +($ CAD in 000s) +FY2025A + +Current Assets +$6,897 +299 +239 +2,719 + +$8,134 +580 +599 +2,984 + +$10,607 +402 +662 +3,600 + +$10,154 + +$12,296 + +$15,271 + +($1,530) +(2,394) + +($1,509) +(3,710) + +($1,673) +(3,232) + +Total Current Liabilities + +($3,924) + +($5,219) + +($4,905) + +Average Working Capital, Reported + +$6,229 + +$7,078 + +$10,366 + +Total Current Assets +Current Liabilities + +Total Adjustments +Average Working Capital, Adjusted + +DSO +DIO +DPO +Cash Conversion + +Adjustment Overview +1 + +Removes accruals for capital purchase orders recorded in accrued +liabilities + +2 + +Adds back capital expenditure-related amounts in accounts payable, +which are not considered part of normal working capital. These +amounts were identified per review of the monthly accounts payable +aging schedules and Management identification of capex related +vendors + +81 +(20) +32 +25 + +$1,213 +862 +(23) +(2) +14 + +$311 +232 +(21) +(17) +11 + +$117 + +$2,063 + +$517 + +$6,346 + +$9,141 + +$10,883 + +35 +38 +15 +58 + +37 +42 +18 +61 + +43 +42 +16 +69 + +3 + +Removes the estimated prepayments related to management fees +paid to Ironbridge that is specific to the current ownership structure +and not expected to continue post-Transaction + +Bl + +Adjustments +1 Capital Accruals +2 Capex in Accounts Payable +3 Prepaid Management Fees +4 Bank Clearing Adjustment +5 Allowance for Doubtful Accounts + +The definition of reported working capital in this analysis is current assets +less current liabilities as presented in the Company’s trial balances. + +ue + +Payroll & Other Current Liabilities +Accounts Payable and Accrued Liabilities + +Working capital adjustments are based on information provided by +Management, trial balance details and BDO estimates and assumptions. +Diligence adjustments have been identified which normalizes working +capital to exclude non-recurring and non-operating items. + +Po + +Accounts Receivable +Other Receivables +Advances, Deposits and Prepaids +Inventory + +Basis of Presentation + +t + +FY2024A + +in + +FY2023A + +4 + +Cash-like account hence eliminated from adjusted working capital + +5 + +Reverses the Company's allowance for doubtful accounts over the +Historical Period as Management notes that the Company has none to +minimal bad debts and the allowance is drawn down to 0 at year-end + +Note: Financials in $CAD unless otherwise noted. July 31 fiscal year end. FY2023A – FY2025A represents QoE adjusted financials. Net Working Capital balances represent average for the fiscal year. + +81 + + \ No newline at end of file diff --git a/backend/test-fixtures/handiFoods/handi-foods-output.txt b/backend/test-fixtures/handiFoods/handi-foods-output.txt new file mode 100644 index 0000000..7950333 --- /dev/null +++ b/backend/test-fixtures/handiFoods/handi-foods-output.txt @@ -0,0 +1,231 @@ +BLUEPOINT Capital Partners +CIM Review Report +Generated: 2/23/2026 at 7:15:07 PM + +Deal Overview +Geography: Toronto, Canada and Newkirk, Canada +Reviewers: Not specified in CIM +Deal Source: Not specified in CIM +Cim Page Count: 81 +Date Reviewed: Not specified in CIM +Employee Count: Not specified in CIM +Industry Sector: Specialty Food Manufacturing / Better-For-You Baked Snacks +Date C I M Received: Not specified in CIM +Transaction Type: Not specified in CIM +Target Company Name: Handi Foods +Stated Reason For Sale: Not specified in CIM + +Business Description +Key Products Services: Crackers (60% of gross sales), Chips (21% of gross sales), Pretzel Chips (17% of +gross sales), and Puffs & Bits (2% of gross sales). The company provides end-to-end manufacturing solutions +including R&D, product development, manufacturing, and packaging services for private label retailers and comanufacturing partnerships. +Core Operations Summary: Handi Foods is a leading value-added provider of baked snacks in North +America, specializing in better-for-you (BFY) baked snacks including crackers, pretzel chips, chips, and puffs & +bits. The company operates as an end-to-end solutions partner, simplifying private label and co-manufacturing +programs for major retailers and brand partners. With two manufacturing facilities totaling 150K+ square feet +and recent $65M+ capital investment in high-capacity automated production lines, Handi Foods serves both +private label (69% of sales) and brand partner (31% of sales) customers across the U.S. (83% of sales) and +Canada (17% of sales). +Unique Value Proposition: Market-leading position with ~60% share of private label pita cracker & pita chip +sales in U.S. & Canada, providing end-to-end solutions partner capabilities with highly automated, scalable +manufacturing platform and strong customer loyalty with 91%+ of sales from sole source customers. + +Market & Industry Analysis +Barriers To Entry: Significant capital requirements for automated production lines ($65M+ recent investment), +established customer relationships with sole source agreements, regulatory compliance for food manufacturing, +and economies of scale in production. +Key Industry Trends: Growing demand for better-for-you (BFY) baked snacks, private label expansion, and +specialty snacking categories including sourdough, brioche, and functional formats. +Estimated Market Size: Operating within the sizable ~$12B North American baked snack market. Near-term +addressable market for current core and emerging product offerings estimated at ~$1,315M-$1,425M by +2025E, growing to ~$1,925M-$2,245M by 2028P. +Estimated Market Growth Rate: $470M-$510M addressable market growing at 5-6% CAGR for private label +pita snacking segment where company holds ~60% market share. + +Financial Summary +Quality Of Earnings: FY2025A PF Adjusted EBITDA reflects $4.5M in one-time and non-recurring +adjustments and $0.5M in pro forma adjustments, indicating some earnings quality considerations. Quality of + + Earnings report prepared by BDO Canada LLP for periods FY2023A through FY2025A with adjustments for +non-recurring and extraordinary items. +Capital Expenditures: Total capital expenditures of $3.8M in FY2025A ($0.7M maintenance, $3.2M growth). +Significant growth capex planned: $12.9M in FY2026E, $13.3M in FY2027P for new production line +installations. Maintenance capex running at approximately 0.7-1.1% of revenue. +Free Cash Flow Quality: 95%+ free cash flow conversion based on (Adj. EBITDA - Maintenance Capital +Expenditures) / Adj. EBITDA calculation, indicating strong cash generation and high-quality earnings +conversion. +Revenue Growth Drivers: Volume expansion within existing top customers such as Trader Joe's and Lidl, +increased ASP driven by turnkey program at Hain Canada, introduction of 11 inaugural Pretzelized SKUs in +March 2024, and rapid increase of the Pretzelized business with addition of 17 new SKUs in FY2025A. Net +sales CAGR of 25.2% from FY2021A-FY2025A. +Margin Stability Analysis: Gross margin improved from 32.0% in FY2023A to 35.7% in FY2025A (370 bps +improvement), driven by increased pricing in response to commodity inflation and fixed operating cost leverage. +EBITDA margin expanded from 26.8% in FY2023A to 31.9% in FY2025A (510 bps improvement), +demonstrating strong operational leverage and margin expansion capability. +Working Capital Intensity: Not specifically detailed in CIM, but freight, transportation, and commissions +decreased from $4.5M to $4.0M despite revenue growth, suggesting improving working capital efficiency. + +Management Team Overview +Key Leaders: Brian Arbique as CEO since 2017, John Dobie as VP of Operations since 2017, Marc Diamant +as CFO in 2024. +Organizational Structure: Not specified in CIM +Post Transaction Intentions: Not specified in CIM +Management Quality Assessment: Experienced management team with Brian Arbique as CEO since 2017 +and John Dobie as VP of Operations since 2017, indicating 8+ years of tenure during the company's +transformation and growth phase. Recent addition of Marc Diamant as CFO in 2024 suggests +professionalization of finance function. Management has overseen successful transition from pita bread to BFY +snacks, significant capacity expansion, and strong financial performance. + +Preliminary Investment Thesis +Key Attractions: 1. Market-leading position with ~60% share of private label pita cracker & pita chip sales in +U.S. & Canada, providing significant competitive moat and pricing power in a $470M-$510M addressable +market growing at 5-6% CAGR. This dominant position supports sustainable revenue growth and margin +expansion opportunities. 2. Exceptional financial performance with 25.2% net sales CAGR from FY2021AFY2025A, reaching $90.1M revenue in FY2025A, and EBITDA margin expansion from 26.8% to 31.9% over +two years, demonstrating strong operational leverage and scalability. 3. Transformative customer relationship +with Pretzelized, growing from first order in March 2024 to projected $7.2M KGs volume by FY2030P under +exclusive long-term sole source agreement, representing significant embedded growth with high-growth brand +partner. 4. Highly automated, scalable manufacturing platform with $65M+ recent capex investment in highcapacity production lines, providing ample capacity for growth and operational efficiency advantages over +competitors. 5. Strong customer loyalty with 91%+ of FY2025A gross sales from sole source customers and +average top 10 customer tenure of ~8 years, indicating sticky customer relationships and predictable revenue +base. 6. Diversified and attractive business mix across channels (Grocery 41%, Mass 35%, Private Label +Grocers 14%, Club 10%) and geographies (U.S. 83%, Canada 17%), reducing concentration risk while +maintaining market leadership. 7. Proven innovation capabilities with 35 new SKUs launched since FY2021A +and robust R&D pipeline, including emerging products in high-growth categories like sourdough, brioche, and +functional formats with estimated $14.5M FY2030P new product revenue opportunity. 8. Exceptional cash +generation with 95%+ free cash flow conversion, providing strong cash returns and flexibility for growth +investments and potential acquisitions. +Potential Risks: 1. Customer concentration risk (Operational): While 91%+ of sales from sole source +customers provides stability, loss of any major customer could significantly impact revenue. Probability: Low, +Impact: High. Mitigation: Long-term contracts and strong customer satisfaction scores. Deal-breaker: No, but +requires careful contract review. 2. Commodity price volatility (Financial): Direct materials represent significant +cost component, and commodity inflation could pressure margins if not passed through to customers. +Probability: Medium, Impact: Medium. Mitigation: Pricing mechanisms and customer relationships support price +increases. Deal-breaker: No. 3. Capacity utilization risk (Operational): Current utilization at 63% in FY2025A +with significant capex planned for new lines, creating risk of underutilized assets if growth doesn't materialize. + + Probability: Medium, Impact: Medium. Mitigation: Strong customer demand visibility and contracted growth. +Deal-breaker: No. 4. Pretzelized dependence risk (Operational): Rapid growth tied to single brand partner +Pretzelized creates concentration risk if relationship deteriorates or brand fails to achieve projected growth. +Probability: Low, Impact: High. Mitigation: Exclusive long-term contract and strong collaborative relationship. +Deal-breaker: No, but requires deep customer diligence. 5. Private label competitive dynamics (Market): Private +label customers could potentially switch suppliers or bring production in-house, threatening market position. +Probability: Low, Impact: Medium. Mitigation: Sole source agreements and high switching costs. Deal-breaker: +No. 6. Food safety and regulatory risk (Regulatory): Food manufacturing subject to strict regulations and +potential recalls could damage reputation and financial performance. Probability: Low, Impact: High. Mitigation: +Established quality systems and insurance coverage. Deal-breaker: No, but requires operational diligence. 7. +Cross-border operations complexity (Operational): Operating in both U.S. and Canada creates currency, +regulatory, and operational complexity. Probability: Medium, Impact: Low. Mitigation: Experienced management +and established operations. Deal-breaker: No. +Value Creation Levers: 1. Pricing optimization and margin expansion: Leverage market-leading position to +implement 2-3% price increases across product portfolio, potentially adding $1.8-2.7M annual revenue with +high flow-through to EBITDA given fixed cost base. Implementation: BPCP pricing expertise and market +analysis. Timeline: 12-18 months. Confidence: High. 2. Operational efficiency improvements: Optimize +production scheduling, reduce changeover times, and improve labor productivity through BPCP's operational +expertise, targeting 100-200 bps EBITDA margin improvement worth $0.9-1.8M annually. Timeline: 18-24 +months. Confidence: Medium-High. 3. M&A consolidation strategy: Acquire complementary baked snack +manufacturers to expand product portfolio, customer base, and geographic reach, with illustrative targets +ranging from $15M-$40M EBITDA providing platform for 2-3x revenue growth. Implementation: BPCP's M&A +expertise. Timeline: 12-36 months. Confidence: Medium. 4. New product development acceleration: Leverage +innovation pipeline including sourdough, brioche, and functional formats to capture estimated $14.5M FY2030P +revenue opportunity, with BPCP supporting go-to-market strategy and customer development. Timeline: 24-36 +months. Confidence: Medium. 5. Customer diversification and expansion: Utilize BPCP's consumer industry +relationships to accelerate new customer wins and expand wallet share with existing customers, targeting +15-20% revenue growth through customer expansion. Timeline: 18-30 months. Confidence: Medium-High. 6. +Supply chain optimization: Implement BPCP's supply chain expertise to optimize procurement, reduce direct +material costs by 50-100 bps, and improve working capital efficiency, potentially adding $0.5-0.9M annual +EBITDA. Timeline: 12-24 months. Confidence: Medium. 7. Technology and automation enhancement: Further +automate production processes and implement data analytics to improve yield, reduce waste, and optimize +capacity utilization, targeting 2-3% improvement in gross margins. Timeline: 24-36 months. Confidence: +Medium. 8. International expansion: Leverage cross-border capabilities to expand into additional international +markets beyond current U.S./Canada footprint, potentially adding 10-15% revenue growth over 3-5 years. +Timeline: 36-60 months. Confidence: Low-Medium. +Alignment With Fund Strategy: EBITDA Range Fit (Score: 10/10): LTM Adjusted EBITDA of $28.8M CAD +(~$21M USD) fits perfectly within BPCP's 5+MM EBITDA target range. Industry Focus (Score: 9/10): Specialty +food manufacturing in consumer end market aligns strongly with BPCP's consumer focus, though industrial +component is limited. Geographic Preferences (Score: 4/10): Toronto and Newkirk, Canada locations are not +within driving distance of Cleveland or Charlotte, presenting geographic misalignment challenge. Value +Creation Expertise Alignment (Score: 9/10): Strong alignment with BPCP's M&A capabilities (fragmented +market consolidation opportunity), technology & automation (recent $65M investment platform), supply chain +optimization (procurement and vertical integration opportunities), and operational improvements (capacity +utilization, efficiency gains). Founder/Family Ownership (Score: 8/10): Founded by first-generation immigrant in +1977 with family heritage, though current ownership by Ironbridge Equity Partners since 2022 reduces founder +involvement. Market Position (Score: 9/10): Leading platform with defensible competitive position and growth +runway aligns with BPCP's preference for market leaders. Financial Profile (Score: 9/10): Strong growth (25.2% +CAGR), margin expansion (18.6% to 31.9%), and cash generation (95%+ FCF conversion) align with BPCP's +financial criteria. Overall Alignment Score: 8.3/10. Strong strategic fit across most criteria with primary concern +being geographic distance from BPCP's preferred Cleveland/Charlotte proximity. The company's scale, market +position, growth profile, and value creation opportunities align well with BPCP's investment strategy despite +geographic considerations. + +Key Questions & Next Steps +Critical Questions: 1. What is the detailed ownership structure and are current owners founder/family-owned +as preferred by BPCP? This is critical for understanding seller motivations, transaction structure, and alignment +with BPCP's investment preferences for founder/family-owned businesses. Priority: High Impact. 2. What are the +specific terms, duration, and renewal provisions of the exclusive Pretzelized contract given its importance to +growth projections? With Pretzelized representing significant projected growth, understanding contract +protection and renewal risk is essential for validating growth assumptions and investment thesis. Priority: Dealbreaker. 3. What is the detailed management team composition, experience, and post-transaction retention + + plans? Given the operational complexity and growth plans, management quality and retention is critical for +successful value creation and operational execution. Priority: High Impact. 4. What are the specific capacity +utilization rates by production line and facility, and how does planned capex align with contracted customer +demand? With 63% current utilization and $26M+ planned capex, understanding capacity-demand alignment is +crucial for validating growth capex requirements and returns. Priority: High Impact. 5. What is the customer +contract renewal schedule and historical retention rates for the next 24 months? With 91%+ sole source +customer relationships, understanding renewal timing and retention risk is essential for revenue predictability +and valuation support. Priority: High Impact. 6. What are the detailed EBITDA adjustments and quality of +earnings issues identified in the BDO report? With $4.5M in one-time adjustments in FY2025A, understanding +earnings quality is critical for normalized EBITDA assessment and valuation. Priority: High Impact. 7. What is +the competitive response risk if Handi Foods continues taking market share in private label pita snacking? +Understanding competitive dynamics and potential retaliation is important for assessing sustainability of market +leadership and pricing power. Priority: Medium Impact. 8. What are the specific food safety protocols, insurance +coverage, and historical recall/quality issues? Given food manufacturing risks, understanding quality systems +and risk mitigation is essential for operational due diligence. Priority: Medium Impact. +Proposed Next Steps: 1. Schedule comprehensive management presentation to assess team quality, +experience, and post-transaction intentions, including detailed discussion of growth strategy and operational +capabilities. Involve: Investment team lead, operating partner. Timeline: Within 1 week. 2. Conduct detailed +customer reference calls with top 5 customers to validate relationship strength, contract terms, renewal +likelihood, and growth potential. Focus particularly on Pretzelized relationship and contract terms. Involve: +Investment team, industry expert. Timeline: Within 2 weeks. 3. Engage food industry expert and former private +label executive to assess competitive positioning, market dynamics, and growth sustainability in baked snack +categories. Involve: Investment team, external advisor. Timeline: Within 2 weeks. 4. Review detailed BDO +Quality of Earnings report to understand EBITDA adjustments, accounting policies, and earnings quality issues. +Involve: Investment team, accounting advisor. Timeline: Within 1 week. 5. Conduct facility tours of both Newkirk +and Mississauga operations to assess manufacturing capabilities, automation levels, capacity utilization, and +expansion plans. Involve: Investment team, operations expert. Timeline: Within 3 weeks. 6. Analyze detailed +customer contracts, renewal schedules, and pricing mechanisms to validate revenue predictability and +customer retention assumptions. Involve: Investment team, legal counsel. Timeline: Within 2 weeks. 7. Develop +preliminary value creation plan focusing on pricing optimization, operational improvements, and M&A strategy +with specific target identification. Involve: Investment team, operating partners. Timeline: Within 3 weeks. 8. +Prepare detailed financial model incorporating capacity analysis, customer growth projections, and sensitivity +analysis for key assumptions. Involve: Investment team, financial modeling expert. Timeline: Within 2 weeks. +Missing Information: 1. Detailed management team bios, experience, and organizational structure - Critical for +assessing execution capability and post-transaction planning. This impacts investment decision by determining +management retention needs and operational risk assessment. Priority: High Impact. 2. Ownership structure +and seller motivations - Essential for understanding transaction dynamics, seller expectations, and alignment +with BPCP preferences for founder/family-owned businesses. Missing this makes deal structuring and +negotiation strategy difficult. Priority: High Impact. 3. Detailed customer contract terms, renewal schedules, and +pricing mechanisms - Critical for understanding revenue predictability, pricing power, and customer retention +risk. This directly impacts revenue projections and valuation multiples. Priority: High Impact. 4. Working capital +analysis and cash flow statement details - Important for understanding cash generation quality, working capital +requirements, and free cash flow sustainability. Missing this limits financial modeling accuracy. Priority: Medium +Impact. 5. Competitive landscape analysis and market share data beyond pita snacking - Needed to understand +broader competitive positioning and market dynamics across all product categories. This impacts growth +strategy and competitive risk assessment. Priority: Medium Impact. 6. Detailed capex plans, equipment +specifications, and capacity analysis by facility - Important for validating growth capex requirements and returns +on invested capital. Missing this limits assessment of capital efficiency and growth sustainability. Priority: +Medium Impact. 7. Supply chain analysis including key suppliers, procurement strategies, and commodity +hedging - Critical for understanding cost structure stability and supply chain risk. This impacts margin +predictability and operational risk assessment. Priority: Medium Impact. 8. Historical M&A activity and +integration capabilities - Important for assessing platform acquisition potential and management's M&A +execution track record. Missing this limits value creation strategy development. Priority: Nice-to-know. +Preliminary Recommendation: Proceed with Caution +Rationale For Recommendation: Strong financial performance with 25.2% revenue CAGR and expanding +EBITDA margins demonstrates scalable business model. Market-leading position with ~60% share in growing +private label pita snacking market provides competitive moat and pricing power. Excellent strategic fit with +BPCP's consumer focus, EBITDA scale requirements, and value creation expertise in M&A, operations, and +supply chain optimization. High-quality cash generation with 95%+ free cash flow conversion supports attractive +returns potential. + + BLUEPOINT Capital Partners | CIM Document Processor | Confidential + + \ No newline at end of file