Mild left-sided DNS (deviated nasal septum) → The partition inside the nose is slightly bent to the left. It can contribute to nasal blockage. Right inferior turbinate hypertrophy → Tissue inside the right side of the nose is enlarged. It can cause difficulty breathing through the nose, congestion, or sometimes snoring. Small benign soft-tissue lesion in the right upper scalp — 8.6 × 3.1 mm → A very small lesion in the scalp, outside the skull/brain. The radiologist describes it as benign, meaning it does not have concerning features on this CT. Make a pdf with treatment and describe the pics of problems

Reading File
Searching Images

inferior turbinate hypertrophy nasal endoscopy

This diagnostic image consists of two rigid nasal endoscopy frames (A and B) illustrating the internal anatomy of the right and left nasal cavities in a 14-year-old male. In panel A (right side), the inferior turbinate (IT) is visible as a smooth, rounded, pinkish structure extending from the lateral wall toward the medial nasal septum (S), maintaining a patent airway passage. In panel B (left side), there is marked hypertrophy of the left inferior turbinate (IT). This structure is significantly enlarged compared to the contralateral side, narrowing the nasal passage and making close contact with the nasal septum (S). The mucosa of the turbinates in both views appears pink and smooth, without evident purulent discharge or polyps. The anatomical labels 'S' for nasal septum and 'IT' for inferior turbinate identify the primary structures. The clinical significance of this finding is the evaluation of nasal obstruction, where such hypertrophy can be associated with concha bullosa or inferior turbinate pneumatization, as seen in this clinical case.

This diagnostic image consists of two rigid nasal endoscopy frames (A and B) illustrating the internal anatomy of the right and left nasal cavities in a 14-year-old male. In panel A (right side), the inferior turbinate (IT) is visible as a smooth, rounded, pinkish structure extending from the lateral wall toward the medial nasal septum (S), maintaining a patent airway passage. In panel B (left side), there is marked hypertrophy of the left inferior turbinate (IT). This structure is significantly enlarged compared to the contralateral side, narrowing the nasal passage and making close contact with the nasal septum (S). The mucosa of the turbinates in both views appears pink and smooth, without evident purulent discharge or polyps. The anatomical labels 'S' for nasal septum and 'IT' for inferior turbinate identify the primary structures. The clinical significance of this finding is the evaluation of nasal obstruction, where such hypertrophy can be associated with concha bullosa or inferior turbinate pneumatization, as seen in this clinical case.

Side-by-side diagnostic nasal endoscopy images comparing a patient's nasal cavity before and after submucous diathermy (SMD) for inferior turbinate hypertrophy. The preoperative image on the left shows a significantly enlarged, edematous inferior turbinate with a smooth, pink mucosal surface, resulting in marked narrowing of the nasal airway. The postoperative image on the right demonstrates a notable reduction in turbinate volume and a wider nasal passage. The treated mucosa exhibits focal changes, including a darker, cauterized area with irregular texture and slight reddish-brown discoloration, consistent with the immediate effects of thermal diathermy used to induce tissue shrinkage through submucosal fibrosis and vessel thrombosis. This comparison illustrates the surgical objective of turbinoplasty: maximizing the nasal airway space while preserving the overlying mucosal integrity.

Side-by-side diagnostic nasal endoscopy images comparing a patient's nasal cavity before and after submucous diathermy (SMD) for inferior turbinate hypertrophy. The preoperative image on the left shows a significantly enlarged, edematous inferior turbinate with a smooth, pink mucosal surface, resulting in marked narrowing of the nasal airway. The postoperative image on the right demonstrates a notable reduction in turbinate volume and a wider nasal passage. The treated mucosa exhibits focal changes, including a darker, cauterized area with irregular texture and slight reddish-brown discoloration, consistent with the immediate effects of thermal diathermy used to induce tissue shrinkage through submucosal fibrosis and vessel thrombosis. This comparison illustrates the surgical objective of turbinoplasty: maximizing the nasal airway space while preserving the overlying mucosal integrity.

This clinical comparison features two images illustrating differential findings in the nasal cavity via anterior rhinoscopy and endoscopy. Image A shows a child's nose with a markedly hypertrophic right inferior turbinate, appearing as a fleshy, smooth, pinkish mass firmly attached to the lateral nasal wall; the external nares show signs of atopic dermatitis with dry, peeling skin. Image B provides a close-up endoscopic view of a nasal polyp (NP). The polyp is characterized by a yellowish, translucent, and gelatinous appearance with a rounded, grape-like morphology, distinct from the surrounding mucosa. This comparison is educational for differentiating benign inflammatory masses like nasal polyps from edematous turbinate hypertrophy commonly seen in pediatric patients with allergic rhinitis. Key diagnostic features include the polyp's glistening, wet surface reflections versus the solid, uniform texture of the hypertrophic turbinate. Medical specialty: Otolaryngology (ENT). Target audience: Medical students and practitioners.

This clinical comparison features two images illustrating differential findings in the nasal cavity via anterior rhinoscopy and endoscopy. Image A shows a child's nose with a markedly hypertrophic right inferior turbinate, appearing as a fleshy, smooth, pinkish mass firmly attached to the lateral nasal wall; the external nares show signs of atopic dermatitis with dry, peeling skin. Image B provides a close-up endoscopic view of a nasal polyp (NP). The polyp is characterized by a yellowish, translucent, and gelatinous appearance with a rounded, grape-like morphology, distinct from the surrounding mucosa. This comparison is educational for differentiating benign inflammatory masses like nasal polyps from edematous turbinate hypertrophy commonly seen in pediatric patients with allergic rhinitis. Key diagnostic features include the polyp's glistening, wet surface reflections versus the solid, uniform texture of the hypertrophic turbinate. Medical specialty: Otolaryngology (ENT). Target audience: Medical students and practitioners.

Searching Images

scalp sebaceous cyst benign soft tissue lesion

Finding Sources
Finding Sources
Finding Sources
Searching Images

lipoma scalp clinical photo

Reading File
Finding Sources
Running Command

mkdir -p /tmp/workspace/nasal-scalp-report/assets && ls -la /tmp/workspace/

Running Command

cd /tmp/workspace/nasal-scalp-report/assets && \ curl -sL "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_3bf064232633be55b8e1d3545d250702f2b757e91d489065ff34bcf8c9c6b9f1.jpg" -o turbinate_normal_vs_hypertrophy.jpg && \ curl -sL "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_4519c8235f6a9f6b219cc33643ee6255d3d20caa8d3c0367e6ed0e80532fa16c.jpg" -o turbinate_before_after.jpg && \ curl -sL "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_617ba02b3f79f1e9f194591783112c2c576e47d84114461a2a58c132adcd07a0.jpg" -o dns_rhinoplasty.jpg && \ ls -la

Writing File

~/nasal-scalp-report/build_pdf.py

from reportlab.lib.pagesizes import A4
from reportlab.lib.units import cm
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_LEFT, TA_CENTER
from reportlab.lib import colors
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Image,
                                 Table, TableStyle, ListFlowable, ListItem, PageBreak, HRFlowable)
import os

ASSETS = "/tmp/workspace/nasal-scalp-report/assets"
OUT = "/tmp/workspace/nasal-scalp-report/CT_Findings_Report.pdf"

styles = getSampleStyleSheet()
styles.add(ParagraphStyle(name="TitleBig", fontSize=20, leading=24, alignment=TA_CENTER,
                           textColor=colors.HexColor("#1a3c6e"), spaceAfter=6, fontName="Helvetica-Bold"))
styles.add(ParagraphStyle(name="SubTitle", fontSize=11, leading=14, alignment=TA_CENTER,
                           textColor=colors.HexColor("#555555"), spaceAfter=16))
styles.add(ParagraphStyle(name="H1", fontSize=15, leading=18, textColor=colors.white,
                           backColor=colors.HexColor("#1a3c6e"), fontName="Helvetica-Bold",
                           spaceBefore=14, spaceAfter=10, leftIndent=6, borderPadding=(6,6,6,6)))
styles.add(ParagraphStyle(name="H2", fontSize=12, leading=15, textColor=colors.HexColor("#1a3c6e"),
                           fontName="Helvetica-Bold", spaceBefore=10, spaceAfter=4))
styles.add(ParagraphStyle(name="Body", fontSize=10.3, leading=15, alignment=TA_LEFT, spaceAfter=6))
styles.add(ParagraphStyle(name="Caption", fontSize=8.7, leading=11, alignment=TA_CENTER,
                           textColor=colors.HexColor("#555555"), spaceAfter=14, fontName="Helvetica-Oblique"))
styles.add(ParagraphStyle(name="Note", fontSize=9.3, leading=13, textColor=colors.HexColor("#7a4a00"),
                           backColor=colors.HexColor("#fff3cd"), borderPadding=(8,8,8,8), spaceAfter=10))

story = []

# ---------- Cover ----------
story.append(Spacer(1, 0.5*cm))
story.append(Paragraph("CT / Clinical Findings Summary", styles["TitleBig"]))
story.append(Paragraph("Plain-language explanation, illustrative images, and treatment options for three incidental findings", styles["SubTitle"]))
story.append(HRFlowable(width="100%", thickness=1.2, color=colors.HexColor("#1a3c6e")))
story.append(Spacer(1, 0.3*cm))

disclaimer = ("This document summarizes three findings mentioned in a CT/clinical report - a mild deviated nasal "
              "septum, right inferior turbinate hypertrophy, and a small benign scalp soft-tissue lesion - and "
              "explains what each means and how it is typically managed. It is for general education only and "
              "does not replace an in-person evaluation by an ENT (otolaryngology) specialist or your treating "
              "physician. Treatment should be individualized based on symptoms, exam findings, and patient preference.")
story.append(Paragraph(disclaimer, styles["Note"]))
story.append(Spacer(1, 0.4*cm))

# ================= SECTION 1: DNS =================
story.append(Paragraph("1. Mild Left-Sided Deviated Nasal Septum (DNS)", styles["H1"]))

story.append(Paragraph("What it means", styles["H2"]))
story.append(Paragraph(
    "The nasal septum is the thin wall of bone and cartilage that divides the nose into left and right "
    "passages. A 'deviation' means this wall is bent or off-center rather than perfectly straight. A mild, "
    "left-sided deviation means the bend is toward the left side and is not severe. Some degree of septal "
    "deviation is present in a large proportion of the general population and many people have no symptoms "
    "at all. When it does cause problems, it is usually because the bend narrows one nasal passage, increasing "
    "resistance to airflow.", styles["Body"]))

story.append(Paragraph("Possible symptoms", styles["H2"]))
bullets = [
    "One-sided (or alternating) nasal blockage or congestion",
    "Mouth breathing, especially at night",
    "Snoring or, in some cases, contribution to sleep-disordered breathing",
    "Recurrent sinus infections or headaches (if drainage pathways are affected)",
    "Nosebleeds from a dry, exposed area of mucosa over a sharp deviation",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))

story.append(Paragraph("Illustrative image", styles["H2"]))
img_path = os.path.join(ASSETS, "dns_rhinoplasty.jpg")
story.append(Image(img_path, width=13*cm, height=13*cm*0.62, kind='proportional'))
story.append(Paragraph(
    "Illustration of septal correction (spreader graft technique) used during septoplasty/septorhinoplasty to "
    "straighten a deviated septal cartilage and restore a symmetric airway. Source: PMC clinical image library.",
    styles["Caption"]))

story.append(Paragraph("Treatment options", styles["H2"]))
story.append(Paragraph("<b>A. Conservative / medical management (first line for mild, minimally symptomatic DNS)</b>", styles["Body"]))
bullets = [
    "No treatment needed if there is no nasal blockage or other symptoms - mild DNS is a common incidental finding.",
    "Saline nasal irrigation/sprays to keep the mucosa moist and reduce crusting.",
    "Intranasal corticosteroid sprays if there is associated allergic rhinitis or mucosal swelling contributing to blockage.",
    "Short-term decongestants (oral or topical) for symptomatic flare-ups - topical decongestants should not be used for more than 3-5 days.",
    "External nasal dilator strips for symptomatic relief during sleep or exercise.",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))

story.append(Paragraph("<b>B. Surgical management (reserved for significant, persistent obstruction)</b>", styles["Body"]))
bullets = [
    "<b>Septoplasty</b> - the standard surgical procedure to straighten the deviated cartilage/bone; usually done endonasally (through the nostrils) with no visible scar.",
    "<b>Endoscopic septoplasty</b> - a minimally invasive variant using an endoscope for precise visualization, often combined with sinus surgery if needed.",
    "<b>Septorhinoplasty</b> - combines septoplasty with reshaping of the external nose when the deviation also affects the nasal appearance/shape.",
    "Surgery is generally considered only when conservative measures fail and the deviation is clearly causing functional nasal obstruction.",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))
story.append(Paragraph(
    "Reference: Textbook of Family Medicine 9e; Cummings Otolaryngology Head and Neck Surgery; "
    "Scott-Brown's Otorhinolaryngology Head & Neck Surgery, Vol 1.", styles["Caption"]))

story.append(PageBreak())

# ================= SECTION 2: Turbinate hypertrophy =================
story.append(Paragraph("2. Right Inferior Turbinate Hypertrophy", styles["H1"]))

story.append(Paragraph("What it means", styles["H2"]))
story.append(Paragraph(
    "The inferior turbinates are curved shelves of bone covered by soft, blood-vessel-rich mucosa that sit "
    "along the side walls inside the nose. Their job is to warm, humidify, and filter the air you breathe. "
    "'Hypertrophy' means this tissue has become enlarged or swollen. When the right inferior turbinate is "
    "hypertrophied, it takes up extra space in the right nasal passage and can restrict airflow on that side. "
    "This is frequently related to chronic/allergic rhinitis, chronic sinus inflammation, or can occur as a "
    "compensatory change opposite a deviated septum (the turbinate enlarges on the wider side to fill the "
    "extra space).", styles["Body"]))

story.append(Paragraph("Possible symptoms", styles["H2"]))
bullets = [
    "Nasal congestion or stuffiness, often worse on the right side",
    "Difficulty breathing through the nose, particularly when lying down",
    "Snoring or noisy breathing during sleep",
    "Postnasal drip or a sensation of mucus at the back of the throat",
    "Reduced sense of smell in more severe/chronic cases",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))

story.append(Paragraph("Illustrative images", styles["H2"]))
img_path2 = os.path.join(ASSETS, "turbinate_normal_vs_hypertrophy.jpg")
story.append(Image(img_path2, width=13*cm, height=13*cm*0.55, kind='proportional'))
story.append(Paragraph(
    "Endoscopic comparison: normal, patent right inferior turbinate (panel A) versus a markedly enlarged, "
    "hypertrophied left inferior turbinate narrowing the airway and contacting the septum (panel B). "
    "S = nasal septum, IT = inferior turbinate. Source: PMC clinical image library.",
    styles["Caption"]))

img_path3 = os.path.join(ASSETS, "turbinate_before_after.jpg")
story.append(Image(img_path3, width=13*cm, height=13*cm*0.5, kind='proportional'))
story.append(Paragraph(
    "Before (left) and after (right) submucous diathermy for inferior turbinate hypertrophy, showing marked "
    "reduction in turbinate size and a widened nasal airway following treatment. Source: PMC clinical image library.",
    styles["Caption"]))

story.append(Paragraph("Treatment options", styles["H2"]))
story.append(Paragraph("<b>A. Medical management (first line)</b>", styles["Body"]))
bullets = [
    "Intranasal corticosteroid sprays - shrink swollen mucosa and are the mainstay of treatment, especially when allergy-driven.",
    "Antihistamines (oral or intranasal) if allergic rhinitis is a contributing factor.",
    "Saline nasal irrigation to reduce mucosal congestion and improve mucus clearance.",
    "Avoidance of known allergens/irritants (dust, smoke, strong odors) and treatment of any underlying chronic rhinosinusitis.",
    "Short courses of decongestants for acute flares (avoid prolonged topical decongestant use, which can cause rebound congestion - rhinitis medicamentosa).",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))

story.append(Paragraph("<b>B. Procedural / surgical management (if medical therapy fails)</b>", styles["Body"]))
bullets = [
    "<b>Radiofrequency tissue reduction (turbinoplasty)</b> - an office-based procedure using controlled heat to shrink turbinate tissue with minimal downtime.",
    "<b>Submucosal diathermy (SMD)</b> - cauterization beneath the mucosal surface to induce fibrosis and shrink the turbinate while preserving the surface lining.",
    "<b>Microdebrider-assisted turbinoplasty</b> - powered instrument removes excess submucosal tissue while preserving the mucosal surface.",
    "<b>Direct/partial turbinate resection</b> - reserved for severe, refractory hypertrophy.",
    "These are frequently combined with septoplasty when turbinate hypertrophy is compensatory to a deviated septum.",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))
story.append(Paragraph(
    "Reference: Cummings Otolaryngology Head and Neck Surgery; Scott-Brown's Otorhinolaryngology Head & Neck "
    "Surgery, Vol 1 (including NICE guidance IPG495/IPG498 on radiofrequency and microdebrider turbinoplasty).",
    styles["Caption"]))

story.append(PageBreak())

# ================= SECTION 3: Scalp lesion =================
story.append(Paragraph("3. Small Benign Soft-Tissue Lesion, Right Upper Scalp (8.6 x 3.1 mm)", styles["H1"]))

story.append(Paragraph("What it means", styles["H2"]))
story.append(Paragraph(
    "This is a very small lump (about the size of a grain of rice to a small pea) located in the soft tissue "
    "of the scalp, outside the skull and brain. Because it was described as 'benign' on CT, the radiologist did "
    "not see features suggestive of malignancy (such as irregular margins, bone destruction, or aggressive "
    "growth). CT is not the ideal tool to characterize soft-tissue skin lesions in detail, but at this small size "
    "and with a benign appearance, the most common possibilities include:", styles["Body"]))
bullets = [
    "<b>Epidermoid (sebaceous) cyst</b> - a round, mobile, keratin-filled cyst just under the skin, sometimes with a visible central punctum (pore). In the scalp these are also called trichilemmal/pilar cysts.",
    "<b>Lipoma</b> - a soft, mobile collection of fatty tissue under the skin; usually painless and slow-growing.",
    "<b>Sebaceous cyst/wen</b> or a small dermal/subcutaneous nodule such as a fibroma.",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))
story.append(Paragraph(
    "A definitive diagnosis usually requires clinical examination (feel, mobility, whether there is a punctum) "
    "and, if removed, pathology of the excised tissue.", styles["Body"]))

story.append(Paragraph("Typical appearance (for reference)", styles["H2"]))
story.append(Paragraph(
    "Epidermoid/sebaceous cysts typically appear as smooth, round, dome-shaped bumps under otherwise normal "
    "skin, often with a tiny central pore; they are firm but mobile over deeper tissue. Lipomas feel soft, "
    "doughy, and slide easily under the fingers when pressed. Neither type is tender unless inflamed or "
    "infected, which can cause redness, warmth, and pain. No matching clinical photograph of a scalp lesion "
    "was available in the reference image library for this report; the description above is based on "
    "standard textbook characterization of these benign lesions.", styles["Body"]))

story.append(Paragraph("Treatment options", styles["H2"]))
story.append(Paragraph("<b>A. Observation (reasonable first approach for a small, asymptomatic, benign-appearing lesion)</b>", styles["Body"]))
bullets = [
    "At 8.6 x 3.1 mm and labeled benign, active surveillance with periodic self-check or clinical follow-up is a reasonable option if it is not growing, painful, or cosmetically bothersome.",
    "Note any change in size, shape, tenderness, redness, or drainage and report this to a physician.",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))

story.append(Paragraph("<b>B. Excision (if the lesion enlarges, becomes symptomatic, or for cosmetic reasons)</b>", styles["Body"]))
bullets = [
    "<b>Simple surgical excision</b> - complete removal of the cyst/lipoma with its wall/capsule under local anesthesia; the standard definitive treatment and allows pathology confirmation.",
    "For epidermoid/sebaceous cysts, the entire cyst wall must be removed to prevent recurrence.",
    "If a cyst becomes infected (painful, red, draining), it may first need incision and drainage or a course of antibiotics before definitive excision.",
    "Lipomas rarely turn malignant, but a rapidly growing, changing, or unusually firm lesion should be excised and sent to pathology to rule out liposarcoma.",
]
story.append(ListFlowable([ListItem(Paragraph(b, styles["Body"])) for b in bullets], bulletType="bullet"))
story.append(Paragraph(
    "Reference: Pfenninger and Fowler's Procedures for Primary Care, 3rd Ed; Bailey and Love's Short Practice "
    "of Surgery, 28th Ed; S. Das - A Manual on Clinical Surgery, 13th Ed.", styles["Caption"]))

story.append(Spacer(1, 0.6*cm))
story.append(HRFlowable(width="100%", thickness=1, color=colors.HexColor("#cccccc")))
story.append(Spacer(1, 0.2*cm))
story.append(Paragraph(
    "Summary table", styles["H2"]))

data = [
    ["Finding", "Likely impact", "First-line treatment", "When to escalate"],
    ["Mild left DNS", "Mild nasal obstruction,\npossible snoring", "Saline rinses, nasal\nsteroid sprays,\nobservation", "Persistent blockage ->\nseptoplasty"],
    ["Right inferior\nturbinate hypertrophy", "Right-sided congestion,\nmouth breathing", "Intranasal steroids,\nantihistamines,\nallergy control", "Refractory symptoms ->\nturbinoplasty (RF/SMD/\nmicrodebrider)"],
    ["Scalp lesion\n8.6 x 3.1 mm, benign", "Usually none\n(cosmetic at most)", "Observation /\nperiodic monitoring", "Growth, pain, or\ncosmetic concern ->\nsimple excision"],
]
tbl = Table(data, colWidths=[4.2*cm, 4.0*cm, 4.3*cm, 4.3*cm])
tbl.setStyle(TableStyle([
    ("BACKGROUND", (0,0), (-1,0), colors.HexColor("#1a3c6e")),
    ("TEXTCOLOR", (0,0), (-1,0), colors.white),
    ("FONTNAME", (0,0), (-1,0), "Helvetica-Bold"),
    ("FONTSIZE", (0,0), (-1,-1), 8.3),
    ("GRID", (0,0), (-1,-1), 0.5, colors.HexColor("#999999")),
    ("VALIGN", (0,0), (-1,-1), "TOP"),
    ("ROWBACKGROUNDS", (0,1), (-1,-1), [colors.white, colors.HexColor("#f2f5fa")]),
    ("TOPPADDING", (0,0), (-1,-1), 6),
    ("BOTTOMPADDING", (0,0), (-1,-1), 6),
]))
story.append(tbl)

story.append(Spacer(1, 0.5*cm))
story.append(Paragraph(
    "This report is an educational summary and is not a substitute for professional medical advice, diagnosis, "
    "or treatment. Please discuss these findings and the treatment plan with an ENT specialist (for the nasal "
    "findings) and your primary physician or a dermatologist/general surgeon (for the scalp lesion).",
    styles["Caption"]))

doc = SimpleDocTemplate(OUT, pagesize=A4, topMargin=1.5*cm, bottomMargin=1.5*cm,
                         leftMargin=1.8*cm, rightMargin=1.8*cm, title="CT Findings Report")
doc.build(story)
print("PDF built at", OUT)
Running Command

cd /tmp/workspace/nasal-scalp-report && python3 build_pdf.py

Running Command

ls -la /tmp/workspace/nasal-scalp-report/CT_Findings_Report.pdf

I've put together a full PDF report covering all three findings, with reference clinical images and treatment pathways for each.

CT Findings Report

PDF Document · PDF

Here's a quick summary of what's inside:
1. Mild left-sided DNS
  • Cause of possible one-sided nasal blockage, mouth breathing, snoring
  • Included an image showing spreader-graft septal correction (used in septoplasty)
  • Treatment: mostly conservative if mild/asymptomatic (saline rinses, intranasal steroids, short-term decongestants); septoplasty reserved for persistent functional obstruction
2. Right inferior turbinate hypertrophy
  • Enlarged mucosal tissue on the right nasal wall narrowing that passage
  • Included two endoscopic images: normal vs. hypertrophied turbinate, and before/after submucosal diathermy treatment
  • Treatment: intranasal steroids/antihistamines first line; if refractory, procedural options like radiofrequency turbinoplasty, submucosal diathermy, or microdebrider reduction
3. Small benign scalp soft-tissue lesion (8.6 x 3.1 mm)
  • Most likely an epidermoid/sebaceous cyst or small lipoma based on size and benign CT appearance
  • No matching clinical photo was available in the reference image library for this specific lesion type, so I described its typical appearance in text (smooth, mobile, sometimes with a central punctum for cysts; soft and doughy for lipomas) instead of using a mismatched image
  • Treatment: observation is reasonable given the small size and benign description; simple excision if it grows, becomes symptomatic, or is cosmetically bothersome
The report also has a one-page summary table at the end comparing all three findings side by side.
One important caveat: CT is not the primary tool for characterizing skin/soft-tissue lesions in detail, and "benign" on imaging is a radiologic impression, not a tissue diagnosis. If this scalp lesion is ever excised, it should go to pathology to confirm. All three findings should be reviewed with the ordering physician or an ENT specialist for a plan tailored to your actual symptoms.

Make pdf short we are family members

Writing File

~/nasal-scalp-report/build_pdf_short.py

from reportlab.lib.pagesizes import A4
from reportlab.lib.units import cm
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_LEFT, TA_CENTER
from reportlab.lib import colors
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Image,
                                 ListFlowable, ListItem, HRFlowable)
import os

ASSETS = "/tmp/workspace/nasal-scalp-report/assets"
OUT = "/tmp/workspace/nasal-scalp-report/CT_Findings_Report_Short.pdf"

styles = getSampleStyleSheet()
styles.add(ParagraphStyle(name="TitleBig", fontSize=18, leading=22, alignment=TA_CENTER,
                           textColor=colors.HexColor("#1a3c6e"), spaceAfter=4, fontName="Helvetica-Bold"))
styles.add(ParagraphStyle(name="SubTitle", fontSize=10, leading=13, alignment=TA_CENTER,
                           textColor=colors.HexColor("#555555"), spaceAfter=10))
styles.add(ParagraphStyle(name="H1", fontSize=12.5, leading=15, textColor=colors.white,
                           backColor=colors.HexColor("#1a3c6e"), fontName="Helvetica-Bold",
                           spaceBefore=10, spaceAfter=6, leftIndent=6, borderPadding=(5,5,5,5)))
styles.add(ParagraphStyle(name="Body", fontSize=9.7, leading=13, alignment=TA_LEFT, spaceAfter=4))
styles.add(ParagraphStyle(name="Caption", fontSize=8, leading=10, alignment=TA_CENTER,
                           textColor=colors.HexColor("#666666"), spaceAfter=8, fontName="Helvetica-Oblique"))

story = []
story.append(Paragraph("Nose &amp; Scalp CT Findings - Simple Summary", styles["TitleBig"]))
story.append(Paragraph("For family reference - plain language, not a substitute for a doctor's visit", styles["SubTitle"]))
story.append(HRFlowable(width="100%", thickness=1, color=colors.HexColor("#1a3c6e")))
story.append(Spacer(1, 0.2*cm))

# 1. DNS
story.append(Paragraph("1. Mild Left-Sided Deviated Septum", styles["H1"]))
story.append(Paragraph(
    "The wall inside the nose is slightly bent left. Very common, often no symptoms. Can cause mild "
    "one-sided blockage, mouth breathing, or snoring.", styles["Body"]))
story.append(Paragraph(
    "<b>Treatment:</b> Usually none needed if not bothersome. If congestion happens: saline nasal rinse, "
    "nasal steroid spray. Surgery (septoplasty) only if it seriously blocks breathing and sprays don't help.",
    styles["Body"]))

# 2. Turbinate
story.append(Paragraph("2. Right Inferior Turbinate Hypertrophy", styles["H1"]))
img2 = os.path.join(ASSETS, "turbinate_normal_vs_hypertrophy.jpg")
story.append(Image(img2, width=10*cm, height=10*cm*0.55, kind='proportional'))
story.append(Paragraph("Normal turbinate (left) vs. swollen/enlarged turbinate (right) seen on nasal camera exam.", styles["Caption"]))
story.append(Paragraph(
    "A soft tissue pad inside the right nostril is swollen, narrowing that side. Often linked to allergies "
    "or chronic congestion. Causes stuffiness, harder breathing on the right, sometimes snoring.", styles["Body"]))
story.append(Paragraph(
    "<b>Treatment:</b> Nasal steroid spray and antihistamines (if allergic) usually help first. If it stays "
    "blocked despite medicine, an ENT can do a quick in-office procedure (radiofrequency or diathermy) to "
    "shrink the tissue.", styles["Body"]))

# 3. Scalp lesion
story.append(Paragraph("3. Small Benign Scalp Lump (8.6 x 3.1 mm)", styles["H1"]))
story.append(Paragraph(
    "A tiny lump under the scalp skin, likely a harmless cyst (sebaceous/epidermoid) or a small fatty lump "
    "(lipoma). The scan shows no worrying features - just a small, benign-looking bump outside the skull.",
    styles["Body"]))
story.append(Paragraph(
    "<b>Treatment:</b> No action needed if it's not growing, painful, or bothersome - just keep an eye on it. "
    "If it grows, hurts, gets red/infected, or you want it gone for cosmetic reasons, a doctor can remove it "
    "with a simple, quick procedure under local anesthesia.", styles["Body"]))

story.append(Spacer(1, 0.3*cm))
story.append(HRFlowable(width="100%", thickness=0.7, color=colors.HexColor("#cccccc")))
story.append(Spacer(1, 0.15*cm))
story.append(Paragraph(
    "Bottom line: none of these three findings are dangerous. Mild ones may need nothing, others just a "
    "spray or medicine. Surgery/removal is only for the ones that keep causing trouble. Please still review "
    "with the doctor who ordered the scan.", styles["Caption"]))

doc = SimpleDocTemplate(OUT, pagesize=A4, topMargin=1.3*cm, bottomMargin=1.3*cm,
                         leftMargin=1.8*cm, rightMargin=1.8*cm, title="CT Findings - Short Summary")
doc.build(story)
print("done", OUT)
Running Command

cd /tmp/workspace/nasal-scalp-report && python3 build_pdf_short.py && ls -la CT_Findings_Report_Short.pdf

Here's the shortened, one-page family-friendly version.

CT Findings Report Short

PDF Document · PDF

Quick recap in plain terms:
  1. Bent nose wall (left side) - very common, usually harmless. Nothing needed unless it's causing stuffiness; a saline rinse or nasal spray handles most cases.
  2. Swollen tissue in right nostril - often from allergies, causes stuffiness on that side. Nasal spray/antihistamines usually fix it; a quick in-office procedure exists if it doesn't improve.
  3. Tiny scalp bump (under 1 cm) - looks like a harmless cyst or fatty lump. Just watch it; only needs removal if it grows, hurts, or bothers you.
None of these are dangerous. Still worth a quick mention to the doctor who ordered the scan, but nothing urgent here.

Add a 3d image to 1 topic dns and add a real image to topic 3 scapple don't change the text in before pdf just add these

Searching Images

scalp epidermoid cyst clinical photo

Searching Images

lipoma skin clinical photograph

Imaging modality: Clinical photography of a soft tissue lesion. Technique: Standard color photograph of the exposed lateral upper arm without instrumentation; no contrast or illumination manipulation. Location: subcutaneous adipose tumor located in the proximal upper arm on the lateral aspect. Anatomical context: integumentary and musculoskeletal soft tissue compartment; subcutaneous fat layer with a well-defined, rounded mass measuring several centimeters in diameter; surface skin overlying the lesion is normal in color with slight skin laxity. Morphology: soft, lobulated, doughy consistency; mass is mobile beneath the skin and appears non-tender; its margins are smooth and the lesion is non-ulcerated. Pathology proxy: lipoma composed of mature adipocytes encapsulated by a thin connective tissue capsule; overlying skin shows no signs of inflammation. Clinical significance: most consistent with benign subcutaneous lipoma; differential diagnosis includes epidermoid cyst, vascular malformation, or less likely liposarcoma in enlarging or painful masses. Diagnostic use: supports clinical decision for observation or surgical excision depending on symptoms, cosmetic concerns, or functional impairment. Relevance: educational reference for clinicians, medical students, dermatology and surgery training; helpful for patient counseling and procedural planning (excisional biopsy or marginal resection). Contextual keywords: lipoma, fatty tumor, subcutaneous, upper arm, soft tissue mass, benign lesion, differential diagnosis, ultrasound/MRI correlation.

Imaging modality: Clinical photography of a soft tissue lesion. Technique: Standard color photograph of the exposed lateral upper arm without instrumentation; no contrast or illumination manipulation. Location: subcutaneous adipose tumor located in the proximal upper arm on the lateral aspect. Anatomical context: integumentary and musculoskeletal soft tissue compartment; subcutaneous fat layer with a well-defined, rounded mass measuring several centimeters in diameter; surface skin overlying the lesion is normal in color with slight skin laxity. Morphology: soft, lobulated, doughy consistency; mass is mobile beneath the skin and appears non-tender; its margins are smooth and the lesion is non-ulcerated. Pathology proxy: lipoma composed of mature adipocytes encapsulated by a thin connective tissue capsule; overlying skin shows no signs of inflammation. Clinical significance: most consistent with benign subcutaneous lipoma; differential diagnosis includes epidermoid cyst, vascular malformation, or less likely liposarcoma in enlarging or painful masses. Diagnostic use: supports clinical decision for observation or surgical excision depending on symptoms, cosmetic concerns, or functional impairment. Relevance: educational reference for clinicians, medical students, dermatology and surgery training; helpful for patient counseling and procedural planning (excisional biopsy or marginal resection). Contextual keywords: lipoma, fatty tumor, subcutaneous, upper arm, soft tissue mass, benign lesion, differential diagnosis, ultrasound/MRI correlation.

This clinical photograph shows a macro-anatomical specimen of an excised palmar lipoma. The tumor is bilobulated and demonstrates a characteristic adipose appearance, being primarily yellowish with a smooth, lobulated surface texture. Visible on the surface are fine reddish vascular markings and mild areas of hyperemia. The specimen is presented on a sterile white surgical gauze next to a metric skin marker ruler for scale, indicating that each lobe measures approximately 3 to 4 cm in length. This specific lipoma was dissected into two parts to preserve the recurrent motor branch of the median nerve during surgical treatment for carpal tunnel syndrome. The image illustrates the gross pathology of a deep palmar lipoma, a benign mesenchymal tumor, highlighting its size and morphological characteristics in the context of hand surgery and peripheral nerve decompression.

This clinical photograph shows a macro-anatomical specimen of an excised palmar lipoma. The tumor is bilobulated and demonstrates a characteristic adipose appearance, being primarily yellowish with a smooth, lobulated surface texture. Visible on the surface are fine reddish vascular markings and mild areas of hyperemia. The specimen is presented on a sterile white surgical gauze next to a metric skin marker ruler for scale, indicating that each lobe measures approximately 3 to 4 cm in length. This specific lipoma was dissected into two parts to preserve the recurrent motor branch of the median nerve during surgical treatment for carpal tunnel syndrome. The image illustrates the gross pathology of a deep palmar lipoma, a benign mesenchymal tumor, highlighting its size and morphological characteristics in the context of hand surgery and peripheral nerve decompression.

Imaging modality and technique: Clinical photography of a solitary subgaleal forehead lipoma in a living patient. Frontal- and anterolateral-view color images were captured under standard ambient lighting with no contrast or staining. Anatomical location and context: forehead (frontal region) involving subcutaneous adipose tissue beneath the galea aponeurotica in the subgaleal space; single, well-circumscribed mass protrudes through the intact skin. Visual features: dome-shaped, soft, pliable, skin-colored lesion with smooth surface margins; margins are distinct from surrounding tissues; no overlying skin changes, erythema, or signs of inflammation. Size appears several centimeters in diameter; mass is mobile with respect to the surrounding structures. Pathology suggestion: benign adipose tumor (lipoma) composed of mature adipocytes in a fibrous capsule; seen as a soft, non-tender, slow-growing lesion; no vascular pulsation or fixation to deep structures evident on photograph. Diagnostic significance: lipomas are common, benign subcutaneous tumors; important to differentiate from cysts, angiolipomas, and less likely sarcomas; management typically involves observation if asymptomatic or cosmetic concerns, with surgical excision or liposuction for definitive removal. Clinical uses: educational demonstration of superficial forehead lipoma, preoperative planning, and differential diagnosis of forehead soft-tissue masses; can guide imaging workup (ultrasound, MRI) if atypical features or rapid growth are present or evolving.

Imaging modality and technique: Clinical photography of a solitary subgaleal forehead lipoma in a living patient. Frontal- and anterolateral-view color images were captured under standard ambient lighting with no contrast or staining. Anatomical location and context: forehead (frontal region) involving subcutaneous adipose tissue beneath the galea aponeurotica in the subgaleal space; single, well-circumscribed mass protrudes through the intact skin. Visual features: dome-shaped, soft, pliable, skin-colored lesion with smooth surface margins; margins are distinct from surrounding tissues; no overlying skin changes, erythema, or signs of inflammation. Size appears several centimeters in diameter; mass is mobile with respect to the surrounding structures. Pathology suggestion: benign adipose tumor (lipoma) composed of mature adipocytes in a fibrous capsule; seen as a soft, non-tender, slow-growing lesion; no vascular pulsation or fixation to deep structures evident on photograph. Diagnostic significance: lipomas are common, benign subcutaneous tumors; important to differentiate from cysts, angiolipomas, and less likely sarcomas; management typically involves observation if asymptomatic or cosmetic concerns, with surgical excision or liposuction for definitive removal. Clinical uses: educational demonstration of superficial forehead lipoma, preoperative planning, and differential diagnosis of forehead soft-tissue masses; can guide imaging workup (ultrasound, MRI) if atypical features or rapid growth are present or evolving.

A composite clinical photograph showing the surgical excision of a giant lipoma from the palm of a human hand. The left panel demonstrates the excised specimen placed over the volar surface of the palm for size comparison, illustrating its substantial dimensions (4.8 x 1.8 x 8.6 cm). The right panel displays the macro specimen separately and the post-excision surgical site. The lipoma is a large, multi-lobulated, yellowish-tan mass with a glistening, encapsulated surface and focal areas of reddish hypervascularity. The surgical site involves the palmar region near the carpal tunnel and Guyon's canal, showing an open longitudinal incision with some exposed soft tissue and skin erythema. A 1 cm scale bar is present in the top right. This image illustrates the surgical management of a deep-seated hand lipoma causing compressive neuropathies of the median and ulnar nerves.

A composite clinical photograph showing the surgical excision of a giant lipoma from the palm of a human hand. The left panel demonstrates the excised specimen placed over the volar surface of the palm for size comparison, illustrating its substantial dimensions (4.8 x 1.8 x 8.6 cm). The right panel displays the macro specimen separately and the post-excision surgical site. The lipoma is a large, multi-lobulated, yellowish-tan mass with a glistening, encapsulated surface and focal areas of reddish hypervascularity. The surgical site involves the palmar region near the carpal tunnel and Guyon's canal, showing an open longitudinal incision with some exposed soft tissue and skin erythema. A 1 cm scale bar is present in the top right. This image illustrates the surgical management of a deep-seated hand lipoma causing compressive neuropathies of the median and ulnar nerves.

This clinical photograph sequence documents a surgical excision of a lipoma on the left hypothenar eminence. The left image shows the initial surgical field with a rounded, well-circumscribed mass protruding through an incision on the ulnar aspect of the palm, held by a metal retractor. The right image shows the advanced dissection where the lipoma is reflected, revealing its characteristic lobular morphology and yellowish-orange hue. The tumor is shown originating near Guyon's canal and the ulnar nerve bifurcation. Anatomical landmarks include the volar aspect of the wrist and the fourth and fifth digits. Surgical instruments, including skin hooks and retractors, are utilized to expose the deep muscular and connective tissues of the hand. This visual demonstrates the surgical management of a symptomatic lipoma causing compression neuropathy (ulnar nerve) and the intraoperative appearance of mature adipose tissue tumors within the complex anatomical compartments of the hand.

This clinical photograph sequence documents a surgical excision of a lipoma on the left hypothenar eminence. The left image shows the initial surgical field with a rounded, well-circumscribed mass protruding through an incision on the ulnar aspect of the palm, held by a metal retractor. The right image shows the advanced dissection where the lipoma is reflected, revealing its characteristic lobular morphology and yellowish-orange hue. The tumor is shown originating near Guyon's canal and the ulnar nerve bifurcation. Anatomical landmarks include the volar aspect of the wrist and the fourth and fifth digits. Surgical instruments, including skin hooks and retractors, are utilized to expose the deep muscular and connective tissues of the hand. This visual demonstrates the surgical management of a symptomatic lipoma causing compression neuropathy (ulnar nerve) and the intraoperative appearance of mature adipose tissue tumors within the complex anatomical compartments of the hand.

Running Command

cd /tmp/workspace/nasal-scalp-report/assets && \ curl -sL "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_0c496776d29aad077e79827545e7b5cad1dcca25dc888d824f3157e435eed34b.jpg" -o dns_3d_ct.jpg && \ curl -sL "https://cdn.orris.care/cdss_images/DermNetNZ_1760033477073_b6deefdf-1f68-4bd2-b982-c6183ad4798c.jpg" -o scalp_lipoma_real.jpg && \ ls -la dns_3d_ct.jpg scalp_lipoma_real.jpg

Editing File

~/nasal-scalp-report/build_pdf_short.py

Error: File '/tmp/workspace/nasal-scalp-report/build_pdf_short.py' not found
Browsing Directory

~/nasal-scalp-report

Browsing Directory

~/nasal-scalp-report/assets

Writing File

~/nasal-scalp-report/build_pdf_short.py

from reportlab.lib.pagesizes import A4
from reportlab.lib.units import cm
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_LEFT, TA_CENTER
from reportlab.lib import colors
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Image,
                                 ListFlowable, ListItem, HRFlowable)
import os

ASSETS = "/tmp/workspace/nasal-scalp-report/assets"
OUT = "/tmp/workspace/nasal-scalp-report/CT_Findings_Report_Short.pdf"

styles = getSampleStyleSheet()
styles.add(ParagraphStyle(name="TitleBig", fontSize=18, leading=22, alignment=TA_CENTER,
                           textColor=colors.HexColor("#1a3c6e"), spaceAfter=4, fontName="Helvetica-Bold"))
styles.add(ParagraphStyle(name="SubTitle", fontSize=10, leading=13, alignment=TA_CENTER,
                           textColor=colors.HexColor("#555555"), spaceAfter=10))
styles.add(ParagraphStyle(name="H1", fontSize=12.5, leading=15, textColor=colors.white,
                           backColor=colors.HexColor("#1a3c6e"), fontName="Helvetica-Bold",
                           spaceBefore=10, spaceAfter=6, leftIndent=6, borderPadding=(5,5,5,5)))
styles.add(ParagraphStyle(name="Body", fontSize=9.7, leading=13, alignment=TA_LEFT, spaceAfter=4))
styles.add(ParagraphStyle(name="Caption", fontSize=8, leading=10, alignment=TA_CENTER,
                           textColor=colors.HexColor("#666666"), spaceAfter=8, fontName="Helvetica-Oblique"))

story = []
story.append(Paragraph("Nose &amp; Scalp CT Findings - Simple Summary", styles["TitleBig"]))
story.append(Paragraph("For family reference - plain language, not a substitute for a doctor's visit", styles["SubTitle"]))
story.append(HRFlowable(width="100%", thickness=1, color=colors.HexColor("#1a3c6e")))
story.append(Spacer(1, 0.2*cm))

# 1. DNS
story.append(Paragraph("1. Mild Left-Sided Deviated Septum", styles["H1"]))
story.append(Paragraph(
    "The wall inside the nose is slightly bent left. Very common, often no symptoms. Can cause mild "
    "one-sided blockage, mouth breathing, or snoring.", styles["Body"]))
img_dns3d = os.path.join(ASSETS, "dns_3d_ct.jpg")
story.append(Image(img_dns3d, width=9*cm, height=9*cm*0.75, kind='proportional'))
story.append(Paragraph("Example 3D CT bone reconstruction showing a nasal septum deviated toward one side "
                        "(illustrative image, not the patient's own scan).", styles["Caption"]))
story.append(Paragraph(
    "<b>Treatment:</b> Usually none needed if not bothersome. If congestion happens: saline nasal rinse, "
    "nasal steroid spray. Surgery (septoplasty) only if it seriously blocks breathing and sprays don't help.",
    styles["Body"]))

# 2. Turbinate
story.append(Paragraph("2. Right Inferior Turbinate Hypertrophy", styles["H1"]))
img2 = os.path.join(ASSETS, "turbinate_normal_vs_hypertrophy.jpg")
story.append(Image(img2, width=10*cm, height=10*cm*0.55, kind='proportional'))
story.append(Paragraph("Normal turbinate (left) vs. swollen/enlarged turbinate (right) seen on nasal camera exam.", styles["Caption"]))
story.append(Paragraph(
    "A soft tissue pad inside the right nostril is swollen, narrowing that side. Often linked to allergies "
    "or chronic congestion. Causes stuffiness, harder breathing on the right, sometimes snoring.", styles["Body"]))
story.append(Paragraph(
    "<b>Treatment:</b> Nasal steroid spray and antihistamines (if allergic) usually help first. If it stays "
    "blocked despite medicine, an ENT can do a quick in-office procedure (radiofrequency or diathermy) to "
    "shrink the tissue.", styles["Body"]))

# 3. Scalp lesion
story.append(Paragraph("3. Small Benign Scalp Lump (8.6 x 3.1 mm)", styles["H1"]))
img_scalp = os.path.join(ASSETS, "scalp_lipoma_real.jpg")
story.append(Image(img_scalp, width=8.5*cm, height=8.5*cm*0.72, kind='proportional'))
story.append(Paragraph("Real clinical photo of a benign lipoma near the scalp/forehead - shown for reference "
                        "to illustrate what this type of lesion typically looks like (not the patient's own lesion).",
                        styles["Caption"]))
story.append(Paragraph(
    "A tiny lump under the scalp skin, likely a harmless cyst (sebaceous/epidermoid) or a small fatty lump "
    "(lipoma). The scan shows no worrying features - just a small, benign-looking bump outside the skull.",
    styles["Body"]))
story.append(Paragraph(
    "<b>Treatment:</b> No action needed if it's not growing, painful, or bothersome - just keep an eye on it. "
    "If it grows, hurts, gets red/infected, or you want it gone for cosmetic reasons, a doctor can remove it "
    "with a simple, quick procedure under local anesthesia.", styles["Body"]))

story.append(Spacer(1, 0.3*cm))
story.append(HRFlowable(width="100%", thickness=0.7, color=colors.HexColor("#cccccc")))
story.append(Spacer(1, 0.15*cm))
story.append(Paragraph(
    "Bottom line: none of these three findings are dangerous. Mild ones may need nothing, others just a "
    "spray or medicine. Surgery/removal is only for the ones that keep causing trouble. Please still review "
    "with the doctor who ordered the scan.", styles["Caption"]))

doc = SimpleDocTemplate(OUT, pagesize=A4, topMargin=1.3*cm, bottomMargin=1.3*cm,
                         leftMargin=1.8*cm, rightMargin=1.8*cm, title="CT Findings - Short Summary")
doc.build(story)
print("done", OUT)
Running Command

cd /tmp/workspace/nasal-scalp-report && python3 build_pdf_short.py && ls -la CT_Findings_Report_Short.pdf

Updated the PDF - same text as before, just added the two images you asked for:

CT Findings Report Short

PDF Document · PDF

  • Topic 1 (DNS): added an example 3D CT bone reconstruction image showing a septum deviated to one side (illustrative, not the patient's actual scan - no 3D CT of this specific patient was provided).
  • Topic 3 (scalp lump): added a real clinical photo of a benign lipoma near the scalp/forehead, to show what this kind of lesion typically looks like (also a reference image, not the patient's own lesion).
No wording was changed anywhere else in the document.
This is a shared conversation. Sign in to Orris to start your own chat.