-- ============================================================
-- UK Fund Seed — retireuk.costusworx.co.za  | CostusWorx © 2026
-- Generated: 2026-06-04  | 83 funds
--
-- ⚠ PROVENANCE — READ BEFORE USE:
--   This seed was AI-assembled from general knowledge of the UK fund market.
--   Fund NAMES, MANAGERS, IA SECTORS, vehicle TYPES and approximate OCFs are
--   real and broadly accurate. ISIN/SEDOL codes are included ONLY for a few
--   well-known UCITS/LSE ETFs and are NOT independently verified; OCF (ter)
--   values are indicative. Every row is is_verified=0 — the UI should warn
--   'illustrative — verify before client use'. Replace identifiers and OCFs
--   from an authoritative source (Morningstar / FE Analytics / fund factsheet)
--   before any client-facing use. No performance data is included.
--
-- Idempotent: ISIN-bearing rows upsert on UNIQUE(isin); the rest insert-if-absent
-- by name. Safe to re-run. Run after schema.sql + funds_schema.sql.
-- ============================================================

-- ── UK columns (MariaDB 10.6+: IF NOT EXISTS makes this re-runnable) ──
ALTER TABLE `funds`
  ADD COLUMN IF NOT EXISTS `sedol` VARCHAR(7) DEFAULT NULL COMMENT 'UK SEDOL code' AFTER `jse_code`,
  ADD COLUMN IF NOT EXISTS `ia_sector_category` VARCHAR(100) DEFAULT NULL COMMENT 'IA sector (UK equivalent of asisa_category)' AFTER `asisa_category`,
  ADD INDEX IF NOT EXISTS `idx_sedol` (`sedol`),
  ADD INDEX IF NOT EXISTS `idx_ia_sector` (`ia_sector_category`);

START TRANSACTION;

-- ia_sector_category is the proper UK column; asisa_category is mirrored for
-- backward-compat with code/search that still reads the SA column name.

-- ── 1. Funds with an ISIN (ETFs) — enrich existing / seed new ──────────────
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
VALUES
  ('IE00B3RBWM25', NULL, 'Vanguard FTSE All-World UCITS ETF (VWRL)', 'Vanguard', 'IA Global', 'IA Global', 'etf', 'FTSE All-World', 0.0022, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'),
  ('IE00B4L5Y983', NULL, 'iShares Core MSCI World UCITS ETF (SWDA)', 'iShares', 'IA Global', 'IA Global', 'etf', 'MSCI World', 0.002, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'),
  ('IE00B3XXRP09', NULL, 'Vanguard S&P 500 UCITS ETF (VUSA)', 'Vanguard', 'IA North America', 'IA North America', 'etf', 'S&P 500', 0.0007, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'),
  ('IE00B810Q511', NULL, 'Vanguard FTSE 100 UCITS ETF (VUKE)', 'Vanguard', 'IA UK All Companies', 'IA UK All Companies', 'etf', 'FTSE 100', 0.0009, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'),
  ('IE0005042456', NULL, 'iShares Core FTSE 100 UCITS ETF (ISF)', 'iShares', 'IA UK All Companies', 'IA UK All Companies', 'etf', 'FTSE 100', 0.0007, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'),
  ('IE00B1FZSB30', NULL, 'iShares Core UK Gilts UCITS ETF (IGLT)', 'iShares', 'IA UK Gilts', 'IA UK Gilts', 'etf', 'FTSE Actuaries UK Gilts', 0.0007, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06')
ON DUPLICATE KEY UPDATE
  `ia_sector_category` = COALESCE(`funds`.`ia_sector_category`, VALUES(`ia_sector_category`)),
  `asisa_category`     = COALESCE(`funds`.`asisa_category`, VALUES(`asisa_category`)),
  `benchmark_index`    = COALESCE(`funds`.`benchmark_index`, VALUES(`benchmark_index`)),
  `ter`                = COALESCE(`funds`.`ter`, VALUES(`ter`)),
  `risk_rating`        = COALESCE(`funds`.`risk_rating`, VALUES(`risk_rating`)),
  `source`             = VALUES(`source`);

-- ── 2. Funds without an ISIN — seed only if name not already present ───────
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard LifeStrategy 20% Equity', 'Vanguard', 'IA Mixed Investment 0-35% Shares', 'IA Mixed Investment 0-35% Shares', 'unit_trust', NULL, 0.0022, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard LifeStrategy 20% Equity') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard LifeStrategy 40% Equity', 'Vanguard', 'IA Mixed Investment 20-60% Shares', 'IA Mixed Investment 20-60% Shares', 'unit_trust', NULL, 0.0022, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard LifeStrategy 40% Equity') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard LifeStrategy 60% Equity', 'Vanguard', 'IA Mixed Investment 40-85% Shares', 'IA Mixed Investment 40-85% Shares', 'unit_trust', NULL, 0.0022, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard LifeStrategy 60% Equity') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard LifeStrategy 80% Equity', 'Vanguard', 'IA Mixed Investment 40-85% Shares', 'IA Mixed Investment 40-85% Shares', 'unit_trust', NULL, 0.0022, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard LifeStrategy 80% Equity') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard LifeStrategy 100% Equity', 'Vanguard', 'IA Flexible Investment', 'IA Flexible Investment', 'unit_trust', NULL, 0.0022, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard LifeStrategy 100% Equity') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'HSBC Global Strategy Cautious Portfolio', 'HSBC', 'IA Mixed Investment 20-60% Shares', 'IA Mixed Investment 20-60% Shares', 'unit_trust', NULL, 0.0017, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'HSBC Global Strategy Cautious Portfolio') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'HSBC Global Strategy Balanced Portfolio', 'HSBC', 'IA Mixed Investment 40-85% Shares', 'IA Mixed Investment 40-85% Shares', 'unit_trust', NULL, 0.0019, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'HSBC Global Strategy Balanced Portfolio') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'HSBC Global Strategy Dynamic Portfolio', 'HSBC', 'IA Flexible Investment', 'IA Flexible Investment', 'unit_trust', NULL, 0.002, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'HSBC Global Strategy Dynamic Portfolio') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'HSBC Global Strategy Adventurous Portfolio', 'HSBC', 'IA Flexible Investment', 'IA Flexible Investment', 'unit_trust', NULL, 0.0021, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'HSBC Global Strategy Adventurous Portfolio') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G Multi-Index 3', 'Legal & General', 'IA Mixed Investment 0-35% Shares', 'IA Mixed Investment 0-35% Shares', 'unit_trust', NULL, 0.0031, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G Multi-Index 3') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G Multi-Index 4', 'Legal & General', 'IA Mixed Investment 20-60% Shares', 'IA Mixed Investment 20-60% Shares', 'unit_trust', NULL, 0.0031, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G Multi-Index 4') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G Multi-Index 5', 'Legal & General', 'IA Mixed Investment 20-60% Shares', 'IA Mixed Investment 20-60% Shares', 'unit_trust', NULL, 0.0031, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G Multi-Index 5') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G Multi-Index 6', 'Legal & General', 'IA Mixed Investment 40-85% Shares', 'IA Mixed Investment 40-85% Shares', 'unit_trust', NULL, 0.0031, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G Multi-Index 6') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G Multi-Index 7', 'Legal & General', 'IA Flexible Investment', 'IA Flexible Investment', 'unit_trust', NULL, 0.0031, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G Multi-Index 7') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'BlackRock MyMap 3', 'BlackRock', 'IA Mixed Investment 0-35% Shares', 'IA Mixed Investment 0-35% Shares', 'unit_trust', NULL, 0.0017, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'BlackRock MyMap 3') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'BlackRock MyMap 5', 'BlackRock', 'IA Mixed Investment 40-85% Shares', 'IA Mixed Investment 40-85% Shares', 'unit_trust', NULL, 0.0017, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'BlackRock MyMap 5') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'BlackRock MyMap 7', 'BlackRock', 'IA Flexible Investment', 'IA Flexible Investment', 'unit_trust', NULL, 0.0017, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'BlackRock MyMap 7') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Royal London GMAP Balanced', 'Royal London', 'IA Mixed Investment 20-60% Shares', 'IA Mixed Investment 20-60% Shares', 'unit_trust', NULL, 0.0036, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Royal London GMAP Balanced') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Baillie Gifford Managed', 'Baillie Gifford', 'IA Mixed Investment 40-85% Shares', 'IA Mixed Investment 40-85% Shares', 'unit_trust', NULL, 0.0043, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Baillie Gifford Managed') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Fundsmith Equity', 'Fundsmith', 'IA Global', 'IA Global', 'unit_trust', 'MSCI World', 0.0094, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Fundsmith Equity') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Lindsell Train Global Equity', 'Lindsell Train', 'IA Global', 'IA Global', 'unit_trust', 'MSCI World', 0.0065, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Lindsell Train Global Equity') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Rathbone Global Opportunities', 'Rathbones', 'IA Global', 'IA Global', 'unit_trust', NULL, 0.0077, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Rathbone Global Opportunities') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Fidelity Global Special Situations', 'Fidelity', 'IA Global', 'IA Global', 'unit_trust', NULL, 0.0092, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Fidelity Global Special Situations') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Baillie Gifford Global Alpha Growth', 'Baillie Gifford', 'IA Global', 'IA Global', 'unit_trust', 'MSCI ACWI', 0.0052, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Baillie Gifford Global Alpha Growth') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Baillie Gifford Positive Change', 'Baillie Gifford', 'IA Global', 'IA Global', 'unit_trust', 'MSCI ACWI', 0.0053, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Baillie Gifford Positive Change') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Liontrust Sustainable Future Global Growth', 'Liontrust', 'IA Global', 'IA Global', 'unit_trust', NULL, 0.0083, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Liontrust Sustainable Future Global Growth') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard FTSE Global All Cap Index', 'Vanguard', 'IA Global', 'IA Global', 'unit_trust', 'FTSE Global All Cap', 0.0023, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard FTSE Global All Cap Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard FTSE Developed World ex-UK Equity Index', 'Vanguard', 'IA Global', 'IA Global', 'unit_trust', 'FTSE Developed ex UK', 0.0014, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard FTSE Developed World ex-UK Equity Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'HSBC FTSE All-World Index', 'HSBC', 'IA Global', 'IA Global', 'unit_trust', 'FTSE All-World', 0.0013, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'HSBC FTSE All-World Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Fidelity Index World', 'Fidelity', 'IA Global', 'IA Global', 'unit_trust', 'MSCI World', 0.0012, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Fidelity Index World') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G International Index Trust', 'Legal & General', 'IA Global', 'IA Global', 'unit_trust', 'FTSE World ex UK', 0.0013, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G International Index Trust') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard US Equity Index', 'Vanguard', 'IA North America', 'IA North America', 'unit_trust', 'S&P Total Market', 0.001, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard US Equity Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'HSBC American Index', 'HSBC', 'IA North America', 'IA North America', 'unit_trust', 'S&P 500', 0.0006, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'HSBC American Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G US Index Trust', 'Legal & General', 'IA North America', 'IA North America', 'unit_trust', 'FTSE USA', 0.001, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G US Index Trust') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Baillie Gifford American', 'Baillie Gifford', 'IA North America', 'IA North America', 'unit_trust', 'S&P 500', 0.0051, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Baillie Gifford American') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Liontrust Special Situations', 'Liontrust', 'IA UK All Companies', 'IA UK All Companies', 'unit_trust', 'FTSE All-Share', 0.0082, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Liontrust Special Situations') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Lindsell Train UK Equity', 'Lindsell Train', 'IA UK All Companies', 'IA UK All Companies', 'unit_trust', 'FTSE All-Share', 0.0065, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Lindsell Train UK Equity') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Royal London Sustainable Leaders', 'Royal London', 'IA UK All Companies', 'IA UK All Companies', 'unit_trust', 'FTSE All-Share', 0.0076, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Royal London Sustainable Leaders') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard FTSE UK All Share Index', 'Vanguard', 'IA UK All Companies', 'IA UK All Companies', 'unit_trust', 'FTSE All-Share', 0.0006, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard FTSE UK All Share Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Fidelity Index UK', 'Fidelity', 'IA UK All Companies', 'IA UK All Companies', 'unit_trust', 'FTSE All-Share', 0.0006, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Fidelity Index UK') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Artemis Income', 'Artemis', 'IA UK Equity Income', 'IA UK Equity Income', 'unit_trust', 'FTSE All-Share', 0.008, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Artemis Income') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Man GLG Income', 'Man Group', 'IA UK Equity Income', 'IA UK Equity Income', 'unit_trust', NULL, 0.009, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Man GLG Income') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'JOHCM UK Equity Income', 'JOHCM', 'IA UK Equity Income', 'IA UK Equity Income', 'unit_trust', NULL, 0.0087, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'JOHCM UK Equity Income') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'City of London Investment Trust', 'Janus Henderson', 'IA UK Equity Income', 'IA UK Equity Income', 'other', 'FTSE All-Share', 0.0037, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'City of London Investment Trust') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'BlackRock European Dynamic', 'BlackRock', 'IA Europe Excluding UK', 'IA Europe Excluding UK', 'unit_trust', NULL, 0.0092, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'BlackRock European Dynamic') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Baillie Gifford European', 'Baillie Gifford', 'IA Europe Excluding UK', 'IA Europe Excluding UK', 'unit_trust', NULL, 0.0058, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Baillie Gifford European') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard FTSE Developed Europe ex-UK Index', 'Vanguard', 'IA Europe Excluding UK', 'IA Europe Excluding UK', 'unit_trust', 'FTSE Dev Europe ex UK', 0.0012, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard FTSE Developed Europe ex-UK Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Baillie Gifford Japanese', 'Baillie Gifford', 'IA Japan', 'IA Japan', 'unit_trust', 'TOPIX', 0.0062, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Baillie Gifford Japanese') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard Japan Stock Index', 'Vanguard', 'IA Japan', 'IA Japan', 'unit_trust', 'MSCI Japan', 0.0016, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard Japan Stock Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Stewart Investors Asia Pacific Leaders Sustainability', 'Stewart Investors', 'IA Asia Pacific Excluding Japan', 'IA Asia Pacific Excluding Japan', 'unit_trust', NULL, 0.0089, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Stewart Investors Asia Pacific Leaders Sustainability') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Fidelity Asia', 'Fidelity', 'IA Asia Pacific Excluding Japan', 'IA Asia Pacific Excluding Japan', 'unit_trust', NULL, 0.0094, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Fidelity Asia') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard Emerging Markets Stock Index', 'Vanguard', 'IA Global Emerging Markets', 'IA Global Emerging Markets', 'unit_trust', 'MSCI Emerging Markets', 0.0023, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard Emerging Markets Stock Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Fidelity Index Emerging Markets', 'Fidelity', 'IA Global Emerging Markets', 'IA Global Emerging Markets', 'unit_trust', 'MSCI Emerging Markets', 0.002, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Fidelity Index Emerging Markets') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'JPM Emerging Markets', 'JPMorgan', 'IA Global Emerging Markets', 'IA Global Emerging Markets', 'unit_trust', NULL, 0.0093, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'JPM Emerging Markets') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G Global Technology Index Trust', 'Legal & General', 'IA Technology and Technology Innovations', 'IA Technology and Technology Innovations', 'unit_trust', NULL, 0.0032, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G Global Technology Index Trust') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Royal London Corporate Bond', 'Royal London', 'IA Sterling Corporate Bond', 'IA Sterling Corporate Bond', 'unit_trust', NULL, 0.0042, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Royal London Corporate Bond') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'M&G Corporate Bond', 'M&G', 'IA Sterling Corporate Bond', 'IA Sterling Corporate Bond', 'unit_trust', NULL, 0.0036, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'M&G Corporate Bond') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard UK Investment Grade Bond Index', 'Vanguard', 'IA Sterling Corporate Bond', 'IA Sterling Corporate Bond', 'unit_trust', NULL, 0.0012, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard UK Investment Grade Bond Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'iShares Corporate Bond Index (UK)', 'BlackRock', 'IA Sterling Corporate Bond', 'IA Sterling Corporate Bond', 'unit_trust', NULL, 0.0011, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'iShares Corporate Bond Index (UK)') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Royal London Sterling Extra Yield Bond', 'Royal London', 'IA Sterling Strategic Bond', 'IA Sterling Strategic Bond', 'unit_trust', NULL, 0.0072, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Royal London Sterling Extra Yield Bond') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Jupiter Strategic Bond', 'Jupiter', 'IA Sterling Strategic Bond', 'IA Sterling Strategic Bond', 'unit_trust', NULL, 0.0073, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Jupiter Strategic Bond') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'M&G Optimal Income', 'M&G', 'IA Sterling Strategic Bond', 'IA Sterling Strategic Bond', 'unit_trust', NULL, 0.0091, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'M&G Optimal Income') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard UK Government Bond Index', 'Vanguard', 'IA UK Gilts', 'IA UK Gilts', 'unit_trust', 'FTSE Actuaries UK Gilts', 0.0012, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard UK Government Bond Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'iShares UK Gilts All Stocks Index', 'BlackRock', 'IA UK Gilts', 'IA UK Gilts', 'unit_trust', NULL, 0.0011, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'iShares UK Gilts All Stocks Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G All Stocks Index Linked Gilt Index', 'Legal & General', 'IA UK Index Linked Gilts', 'IA UK Index Linked Gilts', 'unit_trust', NULL, 0.0015, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G All Stocks Index Linked Gilt Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Vanguard Global Bond Index', 'Vanguard', 'IA Global Bonds', 'IA Global Bonds', 'unit_trust', 'Bloomberg Global Agg (GBP Hedged)', 0.0015, 'medium_low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Vanguard Global Bond Index') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'M&G Global Macro Bond', 'M&G', 'IA Global Bonds', 'IA Global Bonds', 'unit_trust', NULL, 0.0072, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'M&G Global Macro Bond') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G UK Property', 'Legal & General', 'IA UK Direct Property', 'IA UK Direct Property', 'unit_trust', NULL, 0.0151, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G UK Property') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Janus Henderson UK Property PAIF', 'Janus Henderson', 'IA UK Direct Property', 'IA UK Direct Property', 'unit_trust', NULL, 0.0185, 'medium_high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Janus Henderson UK Property PAIF') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Royal London Short Term Money Market', 'Royal London', 'IA Short Term Money Market', 'IA Short Term Money Market', 'money_market', 'SONIA', 0.001, 'low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Royal London Short Term Money Market') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'L&G Cash Trust', 'Legal & General', 'IA Standard Money Market', 'IA Standard Money Market', 'money_market', 'SONIA', 0.0015, 'low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'L&G Cash Trust') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Fidelity Cash', 'Fidelity', 'IA Standard Money Market', 'IA Standard Money Market', 'money_market', 'SONIA', 0.0015, 'low', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Fidelity Cash') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'BNY Mellon Real Return', 'Newton (BNY Mellon)', 'IA Targeted Absolute Return', 'IA Targeted Absolute Return', 'unit_trust', NULL, 0.0079, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'BNY Mellon Real Return') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Janus Henderson Absolute Return', 'Janus Henderson', 'IA Targeted Absolute Return', 'IA Targeted Absolute Return', 'unit_trust', NULL, 0.0105, 'medium', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Janus Henderson Absolute Return') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Scottish Mortgage Investment Trust', 'Baillie Gifford', 'IA Global', 'IA Global', 'other', 'FTSE All-World', 0.0034, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Scottish Mortgage Investment Trust') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'Alliance Trust', 'Alliance Trust', 'IA Global', 'IA Global', 'other', 'MSCI ACWI', 0.0061, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'Alliance Trust') AS _x);
INSERT INTO `funds`
  (`isin`, `sedol`, `name`, `fund_manager`, `asisa_category`, `ia_sector_category`,
   `fund_type`, `benchmark_index`, `ter`, `risk_rating`, `is_active`, `is_verified`, `source`)
SELECT NULL, NULL, 'F&C Investment Trust', 'Columbia Threadneedle', 'IA Global', 'IA Global', 'other', 'FTSE All-World', 0.0049, 'high', 1, 0, 'AI-assembled UK shortlist 2026-06'
WHERE NOT EXISTS (SELECT 1 FROM (SELECT `id` FROM `funds` WHERE `name` = 'F&C Investment Trust') AS _x);

COMMIT;

-- Summary: 6 ISIN-bearing (ETFs, upsert), 77 no-ISIN (seed-if-absent), 83 total.