Audit: QRS - High-Vitamin Butter Oil for Health & Longevity

Audit conducted on 10/09/2026 06:24 using AI4L / Opus 5

Iterations

Summary

Items Count
Total 93
Passed 85
Failed 0
N/A 8
Pass Rate 100.00%
  • Total = Passed + Failed + N/A
  • Pass Rate = Passed / (Passed + Failed) × 100
  • N/A items are excluded from the pass rate calculation

1. General Rules

# Description Result Comments
1.1 Every claim, magnitude, label, recommendation, and statement in the QRS is literally supported by content in the source ER. 🟢 Every populated span traced to ER text: protocol cells to ER 337/345/347, time cells to ER 392, benefit and risk items to the ER tier headings, gates to ER 291–315, markers and cadence to ER 418–429, qualitative items to ER 433–437.
1.2 Where the ER uses cautious phrasing (“not formally studied”, “None documented in human trials to date”, “theoretical concern”, “data are limited”), the QRS uses the same phrasing. 🟢 “No timescale established” / “No trial has given the oil itself to people” mirror ER 392 and 461; at-a-glance keeps “No trial has given the oil to people and measured an outcome”.
1.3 The QRS never strengthens an ER claim (e.g., “not formally studied” → “not required”) or softens one (e.g., “do not use during pregnancy” → “use with caution during pregnancy”). 🟢 Contraindication thresholds (3,000 µg RAE, 1.5 mg retinol, Child-Pugh B/C) carried at ER strength; the absence of oil-level evidence is retained in both the lede and the time-to-effect cell.
1.4 The QRS does not relabel an ER fact under a different decision category. A “Benefit-Modifying Factor” from ER section is not surfaced as a “Caution”; a “Risk-Modifying Factor” is not surfaced as a “Side Effect”; etc. 🟢 All gate items originate in the ER Key Interactions & Contraindications section; nothing from Benefit- or Risk-Modifying Factors is promoted into a gate.
1.5 PubMed IDs, study citations, expert names, clinical trial identifiers (NCT*), and brand names appear in the QRS only if they appear in the source ER for the same fact. 🟢 No PMIDs, NCT IDs, expert names or brand names anywhere in the QRS; the drug names in the gates are the ER’s own parentheticals for the same bullets.
1.6 The QRS does not introduce new attributions. 🟢 No attributions of any kind in the QRS.

2. Focus, Tone & Audience

# Description Result Comments
2.1 The QRS follows the tone of the ER, which is determined by the ER’s own language, phrasing, and framing. 🟢 Matches the ER’s precise, sceptical register — the evidence gap is stated plainly rather than hedged or dramatised.
2.2 The tone of the QRS is simultaneously expert, accessible, objective, and data-driven, but also empowering and encouraging 🟢 Objective and data-driven; the sheet gives the reader the thresholds and markers needed to act on the evidence gap.
2.3 The QRS reads as a trusted, knowledgeable guide rather than a prescriptive doctor 🟢 Descriptive throughout; no directive constructions.
2.4 The QRS avoids language that implies medical or clinical advice 🟢 Cadence and gates are stated as facts of the evidence base, not as instructions.
2.5 The QRS “presents information” instead of “providing guidance”, “recommending”, or “advising” 🟢 No “recommended”, “advised” or “should” anywhere in the document body.
2.6 The QRS never addresses “the reader” directly — it presents evidence, not guidance 🟢 No second-person pronouns in the document body.
2.7 The QRS is written in plain language, avoiding unnecessary medical jargon 🟢 Technical terms are the ER’s own and are expanded where first carried (dp-ucMGP, ApoB, INR in the Monitoring rows).
2.8 Information is presented in a concise and very compact manner 🟢 Every cell is a condensed form of the ER bullet; no cell carries a second sentence of explanation.
2.9 It DOES NOT address the reader directly 🟢 Confirmed — no direct address.
2.10 The target audience is health- and longevity-oriented adults who are risk-aware, proactive, and actively seeking to optimize health or apply the intervention under review. 🟢 Biomarker targets, batch-quality thresholds and dose ceilings assume an engaged, self-directed reader.
2.11 The target audience is willing to employ lifestyle and behavioral changes as well as follow protocols that may be inconvenient, costly, or require effort. 🟢 Monitoring panel of eight markers and split dosing presume that willingness.
2.12 The document is NOT written for the general population, who are unwilling to employ lifestyle and behavioral changes or follow protocols that may be inconvenient, costly, or require effort. 🟢 No general-population framing or simplification.
2.13 Framing, takeaways, and risk/benefit weighting throughout the document reflect this audience, including where an intervention’s signal for the average person differs from its signal for this audience. 🟢 The lede weights the undeclared label and the retinol ceiling — the two facts that matter to a reader already stacking fat-soluble vitamins.
2.14 The document’s own voice frames usage in longevity terms, not “anti-aging” (e.g., “anti-aging clinics”, “anti-aging community”, “anti-aging medicine”). Proper names that contain “anti-aging” (e.g., “American Academy of Anti-Aging Medicine”) are quoted verbatim. 🟢 “anti-aging” does not appear; the title carries “Health & Longevity”.
2.15 The document’s own voice uses formal clinical and scientific terminology, not colloquial or consumer-grade language (e.g., “oral medication” not “pill(s)”; “oral” / “administered orally” not “taken by mouth” / “given by mouth”; “injection” not “shot”; “adverse event” not “bad reaction”). This holds on EVERY surface, including the QRS lede — the stricter plain-language bar (see 2.7) does not license lay phrasing for route of administration. Direct quotes from sources are exempt. 🟢 Dose is given as “Half a teaspoon (2.5 mL)” with the metric volume, matching the ER at 337; no colloquial route or reaction terms.

3. Template Integrity

# Description Result Comments
3.1 The following labels and headings on the QRS are fixed and not modified: Card and section headings: “Protocol”, “Time to effect”, “Benefits”, “Risk & Side Effects”, “Monitoring”, “Qualitative Assessment”; Gate headings: “Contraindications”, “Key Interactions”; Tier labels: “High”, “Medium”, “Low”, “Speculative”; Table column headers in Monitoring: “Marker”, “Target”, “Why” 🟢 All headings verbatim (QRS 445, 489, 535, 562, 574, 594, 622, 734); column headers Marker/Target/Why at 626–628; visible tier labels Medium/Low/Speculative unmodified.
3.2 All “…” from the [qrs_template] are present in the the QRS. 🟢 Programmatic comparison against the template: no template variable missing; the repeated marker_#/qualitative_item_# spans are expanded to 8 and 5 instances.
3.3 Spans that are not addressed in a checklist item are left unchanged 🟢 The three website="…" spans (evidence_review, audit, full_review) and all fixed markup are byte-identical to the template.

4. Formatting

# Description Result Comments
4.1 When the source ER section is empty, the QRS uses the ER’s own empty-state phrasing verbatim. Typical phrasings are “None documented in human trials to date” and “Not formally studied” N/A No source ER section is empty; the empty benefit and risk tiers are governed by 12.5 / 13.5.
4.2 Where the ER presents a bulleted item as “Label: content”, the QRS uses the ER’s bold label verbatim as the cell or row label. 🟢 Protocol labels match ER bullets 337/345/347 verbatim; gate labels match the ER interaction bullets 291–307; marker names match the ER biomarker table verbatim.
4.3 Labels are not paraphrased, abbreviated, or invented. 🟢 Time-to-effect cell labels are the subject terms of the ER’s own time-to-effect bullet (“Vitamin K activity markers”, “Bone density change”, “the oil itself”).
4.4 The QRS DOES NOT use emoji indicators (no 🟩, 🟥, 🟨, etc.). Color and emphasis are conveyed through CSS and bold labels. 🟢 No emoji present; the ER’s ⚠️ Conflicted markers were correctly dropped.
4.5 The QRS is designed to render on one A4 page. Any section that has more content in the ER than fits the per-section budget is condensed by the LLM, not extended onto a second page. 🟢 Every section is condensed rather than transcribed: eight-row marker table trimmed to short “Why” phrases, gate items reduced to label plus qualifier, tier lists collapsed to single semicolon-separated lines.

5. Metadata

# Description Result Comments
5.1 The metadata is placed inside a single HTML comment that is the first element after “<!doctype html>” and before any other comment, head, or body content. 🟢 Lines 2–14, immediately after the doctype.
5.2 Inside that HTML comment the YAML block is delimited by a line “—” opening and a line “—” closing. Text before the opening “—” is permitted but is not parsed as YAML. 🟢 Opening --- at line 3, closing --- at line 13.
5.3 The metadata is not visible in any rendered view of the QRS and is not surfaced by any other element on the sheet. 🟢 Enclosed in an HTML comment; no element repeats its values.
5.4 All frontmatter values are trimmed: no leading or trailing whitespace, no surrounding quotes unless the value contains a colon, bracket, or leading special character that requires YAML quoting. 🟢 Only duration: "00:03" is quoted, correctly so because the value contains a colon.
5.5 The filename of the source ER is stated as “er_filename: [er_filename]” 🟢 Line 4: high_vitamin_butter_oil_2026-0910-0311_Opus_ER.md.
5.6 Version of the QRS.md file used to create the document is stated as “qrs_prompt_version: [Version of QRS.md]” 🟢 Line 5: 26.7.02, matching QRS.md.
5.7 Creation date and time of the document is stated as “qrs_creation_date: [YYYY-MMDD-HHMM]” (e.g., 2026-0501-1430) 🟢 Line 6: 2026-0910-0601.
5.8 The nickname of the AI used to create the document is stated as “qrs_creator_ai_nickname: [qrs_creator_ai_nickname]” 🟢 Line 7: Opus.
5.9 The nickname of the AI is just a single word model name without version, etc. (e.g., Opus, Sonnet, Grok, Gemini, ChatGPT) 🟢 Single word, no version.
5.10 The full name of the AI used to create the document is stated as “qrs_creator_ai_fullname: [qrs_creator_ai_fullname]” 🟢 Line 8: Opus 5.
5.11 The full name of the AI consists of the [qrs_creator_ai_nickname] and the model version number and no additional qualifier (e.g., Opus 4.6, Sonnet 3.2, Grok 4.5, Gemini 3.1, ChatGPT 5.4) 🟢 Nickname plus version only, no qualifier.
5.12 The filename of the document is stated as “qrs_filename: [filename of this document]” 🟢 Line 9 matches the file on disk.
5.13 All frontmatter values are trimmed: no leading or trailing whitespace, no surrounding quotes unless the value contains a colon, bracket, or leading special character that requires YAML quoting. 🟢 All values trimmed; no stray quoting.

6. Page Title & Header

# Description Result Comments
6.1 [page_title] is set to the [canonical_topic] of the ER frontmatter followed by “ - Quick Reference Sheet” (e.g., “Intervention - Quick Reference Sheet”). The [canonical_topic] is HTML-entity-encoded as needed (e.g., &amp; for &) 🟢 “High-Vitamin Butter Oil for Health & Longevity - Quick Reference Sheet” (QRS 22).
6.2 [header_topic] is set to the [canonical_topic] of the ER frontmatter, with HTML entities encoded as needed (e.g., &amp; for &) 🟢 QRS 417, entity-encoded ampersand.
6.3 [header_subline_date] is set to [qrs_creation_date reformatted as MM/DD/YYYY] 🟢 2026-0910-0601 → 09/10/2026 (QRS 421).
6.4 [header_subline_model] is set to [qrs_creator_ai_fullname] 🟢 “Opus 5” (QRS 425).
6.5 No additional header content appears: no badge, version stamp, AKA / alternate names line, source-AI attribution, audit date, or QRS variant marker. 🟢 Header carries only the title and the template subline.

7. At-A-Glance Section

# Description Result Comments
7.1 [at_a_glance] is dense, execution-oriented summary of the ER Conclusion section 🟢 Condenses ER 459–463: what the product is, the absent evidence, the undeclared label, the retinol downside.
7.2 [at_a_glance] is no longer than 60 words 🟢 59 words.
7.3 Every fact in [at_a_glance] is supported by a distinct passage in the ER. 🟢 Four claims map to ER 459, 461, 463 and 461 respectively.
7.4 It DOES NOT use acronyms or technical classifications that require specialist knowledge, uses plain-language terms instead 🟢 No acronyms; “the animal form of vitamin K2” is used instead of MK-4.
7.5 It DOES NOT cite specific trials (names, years, sample sizes, p-values) 🟢 No trial named; “1930s observations” is a period, not a citation.
7.6 It DOES NOT cite effect sizes, relative risks, or statistical results 🟢 No figures of any kind.

8. Contraindications

# Description Result Comments
8.1 The section is derived from the ER Key Interactions & Contraindications section 🟢 All five items come from ER 309–315 and 293.
8.2 [stop_items] represent the Contraindications from the ER 🟢 All five ER avoid-populations present, plus systemic retinoids, which the ER calls an absolute contraindication at 293.
8.3 Individual [stop_items] are formatted as <li></li> 🟢 Five <li> elements inside the span (QRS 565–569).
8.4 Items are as concise as possible. No trailing explanations, no elaborations, no mechanistic rationale, no attributions, no citations, no study details. No content after an em-dash, en-dash, or hyphen-dash (e.g., “— dose reduction required”, “— reduced efficacy”) — these trailing clauses are stripped. Just the key fact. 🟢 Each item is the population plus its threshold; the ER’s parenthetical glosses (RAE definition, T-score explanation, Child-Pugh gloss) are stripped, and no dash clauses remain.
8.5 Parenthetical qualifiers from the ER bullet — time windows, severity classes, threshold values, clinical staging — ARE preserved as part of the item, kept as concise as possible (shortened or trimmed where needed to fit the one-page budget, but never dropped entirely). 🟢 3,000 µg RAE, Child-Pugh Class B or C, T-score −2.5 or below, and 1.5 mg retinol daily are all preserved.
8.6 When the ER uses ranking notation inside parens (e.g., “>” for severity ordering) that depends on an explanatory phrase to interpret, normalize the items to a plain comma-separated list rather than carrying through the bare symbol. N/A The ER uses no ranking notation in this section.
8.7 The section is left empty ONLY IF the ER’s Key Interactions & Contraindications section identifies no population, condition, or scenario for which the intervention should be avoided, deferred, or used only under specialist supervision. 🟢 The ER names five such populations and the section is correctly populated.
8.8 If the section is left empty, an HTML comment inside the [stop_items] span records the ER basis for the absence, naming or quoting the ER text relied on. E.g. N/A The section is not empty.

9. Key Interactions

# Description Result Comments
9.1 The section is derived from the ER Key Interactions & Contraindications section 🟢 All eight items come from ER 291–307.
9.2 [caution_items] represent the Key Interactions from the ER, excluding any that are already listed as Contraindications 🟢 Eight of the ER’s nine interaction bullets are carried; systemic retinoids is correctly omitted here and placed in the Contraindications gate.
9.3 Individual [caution_items] are formatted as <li></li> 🟢 Eight <li> elements (QRS 577–584).
9.4 Items are as concise as possible. No trailing explanations, no elaborations, no mechanistic rationale, no attributions, no citations, no study details. No content after an em-dash, en-dash, or hyphen-dash (e.g., “— dose reduction required”, “— reduced efficacy”) — these trailing clauses are stripped. Just the key fact. 🟢 Each item is the ER’s bold label alone; every mitigation sentence and mechanistic clause is stripped, no dash clauses remain.
9.5 Parenthetical qualifiers from the ER bullet — example drug lists, time windows, severity classes, threshold values, clinical staging — ARE preserved as part of the item, kept as concise as possible (shortened or trimmed where needed to fit the one-page budget, but never dropped entirely). 🟢 Drug lists for the anticoagulants, tetracyclines, sequestrants and OTC retinol sources are preserved, as is the 800 IU vitamin E threshold.
9.6 When the ER uses ranking notation inside parens (e.g., “>” for severity ordering) that depends on an explanatory phrase to interpret, normalize the items to a plain comma-separated list rather than carrying through the bare symbol. N/A The ER uses no ranking notation in this section.
9.7 The section is left empty ONLY IF the ER’s Key Interactions & Contraindications section identifies no interaction, additive effect, or exposure that changes how the intervention is used. 🟢 The ER names eight such interactions and the section is correctly populated.
9.8 If the section is left empty, an HTML comment inside the [caution_items] span records the ER basis for the absence, naming or quoting the ER text relied on. E.g. N/A The section is not empty.

10. Protocol

# Description Result Comments
10.1 The section is derived from the ER Protocol section 🟢 All three cells trace to ER Therapeutic Protocol bullets at 337, 345 and 347.
10.2 The three sets of [action] items cover the three most important actionable implementation aspects from the ER Protocol section 🟢 Dose, timing and dose splitting — the only three bullets in the ER’s protocol list that state an executable action rather than a modifier.
10.3 If less that three distinct actionable implementation aspects are mentioned in the ER the unused sets are left empty and made invisible, not filled with placeholder text or empty-state phrasing. N/A The ER supplies more than three actionable aspects; all three sets are used.
10.4 All used [action_#label], [action#value], [action#_sub] items are filled with meaningful content derived from the ER Protocol section. 🟢 All nine spans carry ER-derived content; the subs add the serving composition, the absorption rationale and the half-life.

11. Time to Effect

# Description Result Comments
11.1 The three sets of [time] items cover the three most important time-to-effect aspects from the ER 🟢 The ER’s time-to-effect bullet (392) names exactly three: vitamin K activity markers, bone density, and the oil itself.
11.2 The sets are picked and ordered by the magnitude of the related benefit 🟢 Marker response first, bone density second, oil-level evidence last, matching the ER’s own ordering and its benefit tiering.
11.3 If less that three distinct time-to-effect aspects are mentioned in the ER the unused sets are left empty and made invisible, not filled with placeholder text or empty-state phrasing. N/A Three distinct aspects are mentioned in the ER; no set is unused.
11.4 All used [time_#label], [time#value], [time#_sub] items are filled with meaningful content derived from the ER. 🟢 2–4 weeks, 6–24 months and the absent oil-level timescale all restate ER 392; the marker sub names the two vitamin K markers from ER 416.
11.5 If the ER does not provide any information on time to effect, the section is removed completely from the Protocol Panel N/A The ER provides time-to-effect information.

12. Benefits

# Description Result Comments
12.1 The section is derived from the ER Expected Benefits section 🟢 Items map one-to-one onto the ER’s Low and Speculative benefit headings (ER 163–201).
12.2 Key variables are [benefits_high], [benefits_medium], [benefits_low], [benefits_speculative] 🟢 All four spans present.
12.3 Items are as concise as possible. No explanations, no elaborations, no effect sizes, no qualifiers, no attributions, no citations, no study details, no mechanistic explanations, etc. Just the key fact. 🟢 Headings only; the magnitude figures, the ⚠️ Conflicted flag and the “Through Matrix Gla Protein Activation” mechanism clause are all dropped.
12.4 Parenthetical content — including effect sizes, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢 No parentheses remain in either benefit line.
12.5 If no items of a specific sub-section (high, medium, low, speculative) are present the respective is set to “display=none”, not filled with “None documented in human trials to date” or similar empty-state phrasing. 🟢 benefits_high and benefits_medium carry style="display: none" with an HTML comment citing the ER basis (QRS 537–542).

13. Risks

# Description Result Comments
13.1 The section is derived from the ER Potential Risks & Side Effects section 🟢 Items map onto the ER’s Medium, Low and Speculative risk headings (ER 231–271).
13.2 Key variables are [risks_high], [risks_medium], [risks_low], [risks_speculative] 🟢 All four spans present.
13.3 Items are as concise as possible. No explanations, no elaborations, no effect sizes, no qualifiers, no attributions, no citations, no study details, no mechanistic explanations, etc. Just the key fact. 🟢 Headings only; relative risks, prevalence ratios and the “from Dairy Saturated Fat” qualifier are dropped.
13.4 Parenthetical content — including frequencies, severity grades, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢 No parentheses remain in any risk line.
13.5 If no items of a specific sub-section (high, medium, low, speculative) are present the respective is set to “display=none”, not filled with “None documented in human trials to date” or similar empty-state phrasing. 🟢 risks_high carries style="display: none" with an HTML comment citing the ER basis (QRS 596–598).

14. Monitoring

# Description Result Comments
14.1 The section is derived from the ER Monitoring section 🟢 Rows and cadence trace to ER Monitoring Protocol & Defining Success (ER 416–429).
14.2 All measurable/quantifiable biomarkers from the Monitoring section are listed 🟢 All eight rows of the ER biomarker table are present, in ER order, with targets preserved.
14.3 [monitoring_cadence] is populated with the monitoring cadence/frequency derived from the ER Monitoring section. It is not left with placeholder text or empty. 🟢 Baseline, three-month, six-to-twelve-month and weekly INR intervals all carried from ER 418.

15. Qualitative Assessment

# Description Result Comments
15.1 The section is derived from the ER Monitoring section 🟢 Derived from the ER’s qualitative marker list at 433–437.
15.2 All subjective/qualitative biomarkers from the Monitoring section are listed 🟢 All five ER qualitative markers present, in ER order.

Issues 10/09/2026 06:24

Pass rate 100.00%. No issues found.

Issues 10/09/2026 06:13

  1. 4.2 / 4.3 — Key Interaction labels not verbatim: Three caution_items labels deviate from the ER’s bold labels — “Other vitamin A sources” (ER: “Over-the-counter vitamin A sources”), “Additive supplements” (ER: “Additive supplement interactions”) and “Other interventions” (ER: “Other intervention interactions”) at QRS lines 581–584; “retinyl palmitate multivitamins” was also shortened to “retinyl palmitate”.
  2. 2.5 — Imperative in protocol value: action_3_value (line 479) reads “Split across two fat-containing meals”, instructing rather than presenting, where the ER (line 347) only says the short half-life “argues for splitting”.

Fixes 10/09/2026 06:13

  1. 4.2 / 4.3 — Key Interaction labels restored verbatim: Changed “Other vitamin A sources (cod liver oil, retinyl palmitate, …)” to “Over-the-counter vitamin A sources (cod liver oil, retinyl palmitate multivitamins, …)”, “Additive supplements” to “Additive supplement interactions”, and “Other interventions” to “Other intervention interactions”, matching the ER’s bold labels.
  2. 4.3 — Interaction parenthetical corrected: Within “Other intervention interactions”, “pancreatic insufficiency” was restored to the ER’s “pancreatic enzyme insufficiency” and “or ketogenic” was dropped, since the ER states ketogenic diets increase rather than reduce delivery.
  3. 2.5 — Imperative removed from protocol value: action_3_value changed from “Split across two fat-containing meals” to “Splitting across two fat-containing meals”, so the cell presents the aspect instead of instructing the reader.

Issues 10/09/2026 06:08

  1. 4.5 — Content overflows one A4 page: Estimated rendered height is roughly 1.6 A4 pages against the ~1030px usable print height; Monitoring (lines 624–730), the Key Interactions gate (lines 576–585) and the Protocol panel (lines 444–531) each carry uncondensed ER prose that pushes the sheet onto a second page.
  2. 12.3 — Mechanism carried into benefit item: [benefits_speculative] at line 552 reads “Improved arterial elasticity through matrix Gla protein activation”, carrying a mechanistic explanation that this item requires be stripped.

Fixes 10/09/2026 06:08

  1. 12.3 — Mechanism stripped from benefit: [benefits_speculative] changed from “Improved arterial elasticity through matrix Gla protein activation” to “Improved arterial elasticity”, removing the molecular pathway.
  2. 4.5 — Monitoring table condensed: Seven “Why” cells and two “Target” cells were shortened (e.g. marker_7_why from “Whether added dairy saturated fat is raising cholesterol-carrying particle count” to “Cholesterol particle count from added dairy fat”; marker_8_target from “Within the individual’s prescribed target, commonly 2.0–3.0” to “Prescribed target, commonly 2.0–3.0”) so most rows fit a single line.
  3. 4.5 — Monitoring cadence shortened: Trimmed the repeated “six-to-twelve-month” phrasing to “the same rhythm”, cutting the cadence paragraph by roughly one rendered line.
  4. 4.5 — Risk items condensed: [risks_medium] merged the duplicated “from preformed vitamin A” attribution into one trailing clause, and [risks_low] dropped the redundant “from dairy saturated fat”; each item now fits one line.
  5. 4.5 — Key Interactions items shortened: “Over-the-counter vitamin A sources” → “Other vitamin A sources”, “Additive supplement interactions” → “Additive supplements”, and “Other intervention interactions (…)” trimmed to “Other interventions (bariatric surgery, pancreatic insufficiency, very-low-fat or ketogenic diets, high-dose niacin)”.
  6. 4.5 — Qualitative items trimmed: Removed filler from qualitative_item_1 (“routine six-monthly checks” → “six-monthly checks”) and qualitative_item_5 (“vague fatigue and loss of appetite before laboratory changes appear” → “fatigue and appetite loss before laboratory changes”).