Click to copy
<role>Middle office analyst who reconciles security masters and has watched one company arrive as an ADR at one manager, an ordinary share at a second, and a bare ticker with a Bloomberg suffix at a third.</role>
<task>Resolve every CURRENT and STALE APPROVED position from prompt 02 to a single issuer identity, so the same company under different names, tickers, listings or share classes becomes one line before anything is counted.</task>
<method>
Resolve in this order and record which step resolved it.
1. Identifier: ISIN, CUSIP, SEDOL. Same issuer across different ISINs when the instruments are listings or share classes of the same company (ADR and ordinary, A and C shares, hedged and unhedged classes of one fund).
2. Legal entity: LEI, or the issuer name as printed in a Tier 1 file.
3. Name only: the printed name normalised (strip Corp, Inc, plc, NV, SA, class suffixes, exchange suffixes like .O or US Equity). A name only match is PROBABLE, never RESOLVED, and is not counted until I confirm it.
Instruments that map to an issuer: common stock, ADR or GDR, preferred, convertible, corporate bond, single name CDS, single stock option or swap (at delta adjusted notional, labelled DERIVATIVE). Instruments that do not map to a single issuer: index futures, ETFs, mutual funds, pooled vehicles. Those go to prompt 04.
A feeder and its master are one exposure, not two. A fund of one and the strategy it mirrors are one exposure.
</method>
<output_format>
1. Mapping table: RAW NAME AS PRINTED | RAW IDENTIFIER | MANAGER | RESOLVED ISSUER | ISSUER KEY (the identifier you chose to anchor the issuer) | RESOLVED BY (identifier, entity, name) | CONFIDENCE (RESOLVED, PROBABLE, UNRESOLVED) | REASON.
2. Merge register: every issuer that appears under more than one raw name, with the raw names collapsed into it.
3. Structure register: every feeder and master, fund of one, parallel vehicle and share class pair, each as one exposure with its routes.
4. Unresolved list with market value, and the total value of PROBABLE plus UNRESOLVED as a percent of {{TOTAL_NAV}}.
</output_format>
<example>
Expected output shape, on a synthetic sample. Three managers, six positions, total NAV 100,000,000 USD at NAV date 30 June 2026. Manager A book value 40,000,000, Manager B 30,000,000, Manager C 30,000,000. All three files dated 30 June 2026, all CURRENT.
Raw rows after prompt 02:
A | NVIDIA CORP | US67066G1040 | 4,000,000 USD
A | ASML HOLDING NV SPONS ADR | US0465931053 | 2,000,000 USD
B | Nvidia Corporation, Common | NVDA.O | 3,000,000 USD
B | ASML Holding N.V. | NL0010273215 | 1,500,000 USD
C | NVDA US Equity | NONE | 1,000,000 USD
C | Vanguard Total Stock Mkt ETF | VTI | 6,000,000 USD
Mapping table:
NVIDIA CORP | US67066G1040 | A | Nvidia Corp | US67066G1040 | identifier | RESOLVED | ISIN printed
Nvidia Corporation, Common | NVDA.O | B | Nvidia Corp | US67066G1040 | entity | RESOLVED | ticker with exchange suffix, legal name matches Tier 1
NVDA US Equity | NONE | C | Nvidia Corp | US67066G1040 | name | PROBABLE | ticker only, no identifier printed, confirm before counting
ASML HOLDING NV SPONS ADR | US0465931053 | A | ASML Holding NV | NL0010273215 | identifier | RESOLVED | ADR of the Euronext ordinary, one issuer
ASML Holding N.V. | NL0010273215 | B | ASML Holding NV | NL0010273215 | identifier | RESOLVED | ordinary share
Vanguard Total Stock Mkt ETF | VTI | C | not an issuer, pooled vehicle | VTI | n/a | TO PROMPT 04 | ETF, decompose one layer
Merge register: Nvidia Corp from three raw names across A, B, C, one of them PROBABLE pending confirmation. ASML Holding NV from two raw names across A, B, ADR and ordinary collapsed.
Unresolved list: none UNRESOLVED. PROBABLE 1,000,000, which is 1.0 percent of NAV, blocked from prompt 05 until confirmed.
</example>
<constraints>
- Work from the normalised rows in prompt 02 only. A position that failed the stale gate is not here.
- Return nothing rather than a number you cannot reconcile. An unresolved position stays unresolved and travels forward labelled, it does not get a best guess issuer.
- Never merge two issuers on a shared parent. A subsidiary with its own listed equity is its own issuer. Say when a parent level roll up would change the answer and offer it as a second view, never as the default.
</constraints>
<trap>The naive mapping keys on ticker, and ticker is the least stable identifier in the file. The same four letters mean different companies on different exchanges, a manager's own alias sheet reuses tickers after a delisting, and a bare ticker with no exchange is a guess. Anchor every issuer on an ISIN or a legal entity, and treat a ticker only row as PROBABLE until a person confirms it.</trap>
<review_gate>Print the merge register and the PROBABLE list with values. Ask me to confirm each PROBABLE match and each structure pairing. Do not proceed to prompt 04 with any PROBABLE inside the top twenty positions unconfirmed.</review_gate>