if i buy credits so i could use orris now?

Your credits are exhausted. You can purchase a top-up or subscribe to a plan to continue using Orris. If you're already subscribed, your daily credits will reset tomorrow.
attachment
attachment

make me a cheat sheet as u made me before

analyse_media

Shoulder Joint Injuries – Cheat Sheet

AC Joint Dislocation ("Shoulder Separation")
  • Cause: severe blow to superolateral back / player driven into boards
  • Mechanism: coracoclavicular ligament tears → fibrous capsule tears → acromion passes inferior to clavicle
  • Result: clavicle appears to ride superior to acromion; shoulder drops from limb weight
  • Severity marker: BOTH AC + coracoclavicular ligaments torn = severe
Calcific Tendinitis of Shoulder (Calcific Scapulohumeral Bursitis)
  • Pathology: Ca²⁺ deposition in supraspinatus tendon → irritates subacromial bursa → subacromial bursitis
  • Pain: excruciating, radiates to hand, worse on abduction
  • Painful arc syndrome: pain specifically at 50–130° abduction (supraspinatus tendon contacts acromion)
  • No pain when adducted (lesion away from acromion)
  • Typical patient: males ≥50 yrs, after excessive/unusual glenohumeral use
Rotator Cuff Injuries
  • Cause: repetitive overhead use (throwing, racquet sports, swimming, weightlifting) → impingement of humeral head/cuff on coracoacromial arch → degenerative tendonitis, esp. supraspinatus (relatively avascular zone) → attrition/tear
  • Acute cause: sudden strain (lifting stuck object) or fall on shoulder rupturing an already-degenerated cuff
  • Drop-arm test: lower fully abducted arm slowly; if cuff (supraspinatus) torn/diseased, arm suddenly drops uncontrolled at ~90°
  • Complete tear: cannot INITIATE abduction (supraspinatus non-functional); if passively abducted ≥15°, deltoid can continue/maintain abduction
  • Associated finding: biceps brachii long head tendon frays/adheres in intertubercular sulcus → shoulder stiffness
  • Capsule integrity often compromised → articular cavity communicates with subacromial bursa
Dislocation of Glenohumeral Joint
  • Most common direction overall: inferior (downward) — coracoacromial arch + rotator cuff resist upward dislocation
  • Clinically classified as: Anterior or Posterior (rare) — based on where humeral head ends up relative to infraglenoid tubercle/triceps long head
  • Anterior dislocation:
    • Most common in young adults/athletes
    • Mechanism: excessive extension + lateral rotation of humerus → head driven infero-anteriorly → capsule/glenoid labrum stripped anteriorly → hard blow while fully abducted tilts head onto inferior weak capsule → tears capsule → head lies inferior to glenoid cavity, anterior to infraglenoid tubercle
    • Flexor/adductor muscles then pull head anterosuperiorly into subcoracoid position
    • Patient supports arm with other hand
  • Inferior dislocation:
    • Often follows avulsion fracture of greater tubercle (loses upward/medial muscle pull)
    • Risk: axillary nerve injury (close relation to inferior joint capsule)
Glenoid Labrum Tears
  • Population: throwing athletes (baseball, football), those with shoulder instability/subluxation
  • Mechanism: sudden biceps contraction or forceful subluxation of humeral head over labrum
  • Location: usually anterosuperior labrum
  • Symptoms: pain while throwing (esp. acceleration phase), popping/snapping sensation during abduction + lateral rotation
Adhesive Capsulitis ("Frozen Shoulder")
  • Pathology: adhesive fibrosis/scarring between inflamed joint capsule, rotator cuff, subacromial bursa, and deltoid
  • Typical age: 40–60 years
  • Presentation: difficulty abducting arm; apparent abduction only to ~45° achieved by elevating/rotating scapula (compensatory)
  • Secondary effect: strain on AC joint (painful with shoulder shrugging/elevation) since glenohumeral joint doesn't move
  • Predisposing injuries: glenohumeral dislocation, calcific supraspinatus tendinitis, partial rotator cuff tear, bicipital tendinitis

Quick memory hooks:
  • Painful arc = 50–130° = supraspinatus/calcific tendinitis
  • Drop-arm test = rotator cuff tear
  • Anterior dislocation = young athlete, extension + lateral rotation
  • Inferior dislocation = watch for axillary nerve
  • Frozen shoulder = 40-60 yo, ~45° abduction via scapula only
Want this exported as a PDF or Word doc cheat sheet as well?

Export this as a PDF quick reference card

Reading File
Running Command

mkdir -p /tmp/workspace/shoulder-cheatsheet && ls -la /tmp/workspace/

Writing File

~/shoulder-cheatsheet/build_pdf.py

from reportlab.lib.pagesizes import letter
from reportlab.lib.units import inch
from reportlab.lib import colors
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Table,
                                 TableStyle, HRFlowable)
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_CENTER

OUT = "/tmp/workspace/shoulder-cheatsheet/Shoulder_Injuries_Cheat_Sheet.pdf"

styles = getSampleStyleSheet()

title_style = ParagraphStyle(
    "TitleStyle", parent=styles["Title"], fontSize=18, textColor=colors.HexColor("#0B3D91"),
    spaceAfter=2, alignment=TA_CENTER
)
subtitle_style = ParagraphStyle(
    "SubtitleStyle", parent=styles["Normal"], fontSize=9, textColor=colors.HexColor("#555555"),
    alignment=TA_CENTER, spaceAfter=10
)
heading_style = ParagraphStyle(
    "HeadingStyle", parent=styles["Heading2"], fontSize=12.5, textColor=colors.white,
    backColor=colors.HexColor("#0B3D91"), leftIndent=4, spaceBefore=0, spaceAfter=0,
    borderPadding=(4, 4, 4, 4), leading=16
)
body_style = ParagraphStyle(
    "BodyStyle", parent=styles["Normal"], fontSize=8.7, leading=11.5, spaceAfter=2
)
label_style = ParagraphStyle(
    "LabelStyle", parent=body_style, textColor=colors.HexColor("#0B3D91"), fontName="Helvetica-Bold"
)
hook_style = ParagraphStyle(
    "HookStyle", parent=body_style, fontSize=8.7, leading=11.5, textColor=colors.HexColor("#7A2E00")
)

def bullet_list(items):
    """items: list of (label_or_None, text)"""
    lines = []
    for label, text in items:
        if label:
            lines.append(f'&bull; <font color="#0B3D91"><b>{label}</b></font> {text}')
        else:
            lines.append(f"&bull; {text}")
    return Paragraph("<br/>".join(lines), body_style)

def section(heading, items):
    return [
        Paragraph(heading, heading_style),
        Spacer(1, 3),
        bullet_list(items),
        Spacer(1, 8),
    ]

story = []

story.append(Paragraph("Shoulder Joint Injuries", title_style))
story.append(Paragraph("Clinical Quick Reference Card &mdash; Anatomy &amp; Orthopaedics", subtitle_style))
story.append(HRFlowable(width="100%", thickness=1.2, color=colors.HexColor("#0B3D91")))
story.append(Spacer(1, 8))

# ---- AC Joint Dislocation ----
story += section("AC Joint Dislocation (&quot;Shoulder Separation&quot;)", [
    ("Cause:", "severe blow to superolateral back / player driven into boards"),
    ("Mechanism:", "coracoclavicular ligament tears &rarr; fibrous capsule tears &rarr; acromion passes inferior to clavicle"),
    ("Result:", "clavicle appears to ride superior to acromion; shoulder drops from limb weight"),
    ("Severity marker:", "BOTH AC + coracoclavicular ligaments torn = severe"),
])

# ---- Calcific Tendinitis ----
story += section("Calcific Tendinitis of Shoulder (Calcific Scapulohumeral Bursitis)", [
    ("Pathology:", "Ca&sup2;&#8314; deposition in supraspinatus tendon &rarr; irritates subacromial bursa &rarr; subacromial bursitis"),
    ("Pain:", "excruciating, radiates to hand, worse on abduction"),
    ("Painful arc syndrome:", "pain specifically at 50&ndash;130&deg; abduction (supraspinatus tendon contacts acromion)"),
    ("Key sign:", "no pain when adducted (lesion away from acromion)"),
    ("Typical patient:", "males &ge;50 yrs, after excessive/unusual glenohumeral use"),
])

# ---- Rotator Cuff Injuries ----
story += section("Rotator Cuff Injuries", [
    ("Cause:", "repetitive overhead use (throwing, racquet sports, swimming, weightlifting) &rarr; impingement on coracoacromial arch &rarr; degenerative tendonitis, esp. supraspinatus (avascular zone) &rarr; attrition/tear"),
    ("Acute cause:", "sudden strain (lifting stuck object) or fall on shoulder rupturing an already-degenerated cuff"),
    ("Drop-arm test:", "lower fully abducted arm slowly; if cuff (supraspinatus) torn/diseased, arm suddenly drops uncontrolled at ~90&deg;"),
    ("Complete tear:", "cannot INITIATE abduction (supraspinatus non-functional); if passively abducted &ge;15&deg;, deltoid maintains abduction"),
    ("Associated finding:", "long head of biceps tendon frays/adheres in intertubercular sulcus &rarr; shoulder stiffness"),
    ("Note:", "capsule integrity often compromised &rarr; articular cavity communicates with subacromial bursa"),
])

# ---- Dislocation of Glenohumeral Joint ----
story += section("Dislocation of Glenohumeral Joint", [
    ("Most common direction overall:", "inferior (downward) &mdash; coraco-acromial arch + rotator cuff resist upward dislocation"),
    ("Clinical classification:", "Anterior or Posterior (rare) &mdash; based on humeral head position relative to infraglenoid tubercle/triceps long head"),
    ("Anterior dislocation:", "most common, young adults/athletes. Mechanism: excessive extension + lateral rotation &rarr; head driven infero-anteriorly &rarr; capsule/labrum stripped anteriorly &rarr; head ends inferior to glenoid, anterior to infraglenoid tubercle &rarr; flexors/adductors pull head anterosuperiorly into subcoracoid position. Patient supports arm with other hand."),
    ("Inferior dislocation:", "often follows avulsion fracture of greater tubercle (loses upward/medial muscle pull). Risk: axillary nerve injury (close to inferior capsule)."),
])

# ---- Glenoid Labrum Tears ----
story += section("Glenoid Labrum Tears", [
    ("Population:", "throwing athletes (baseball, football); shoulder instability/subluxation"),
    ("Mechanism:", "sudden biceps contraction or forceful subluxation of humeral head over labrum"),
    ("Location:", "usually anterosuperior labrum"),
    ("Symptoms:", "pain while throwing (esp. acceleration phase); popping/snapping during abduction + lateral rotation"),
])

# ---- Adhesive Capsulitis ----
story += section("Adhesive Capsulitis (&quot;Frozen Shoulder&quot;)", [
    ("Pathology:", "adhesive fibrosis/scarring between inflamed joint capsule, rotator cuff, subacromial bursa, and deltoid"),
    ("Typical age:", "40&ndash;60 years"),
    ("Presentation:", "difficulty abducting arm; apparent abduction only to ~45&deg; via scapular elevation/rotation (compensatory)"),
    ("Secondary effect:", "strain on AC joint (painful with shrugging/elevation) since glenohumeral joint doesn't move"),
    ("Predisposing injuries:", "glenohumeral dislocation, calcific supraspinatus tendinitis, partial rotator cuff tear, bicipital tendinitis"),
])

# ---- Quick memory hooks table ----
story.append(Paragraph("Quick Memory Hooks", heading_style))
story.append(Spacer(1, 4))

hooks = [
    ["Painful arc (50-130&deg; abduction)", "Supraspinatus / calcific tendinitis"],
    ["Positive drop-arm test", "Rotator cuff tear"],
    ["Extension + lateral rotation injury", "Anterior glenohumeral dislocation"],
    ["Watch for axillary nerve injury", "Inferior glenohumeral dislocation"],
    ["~45&deg; abduction via scapula only, age 40-60", "Frozen shoulder (adhesive capsulitis)"],
]

def P(t):
    return Paragraph(t, ParagraphStyle("cell", parent=body_style, fontSize=8.5, leading=10.5))

table_data = [[P("<b>Clinical Clue</b>"), P("<b>Think&#8230;</b>")]] + [[P(a), P(b)] for a, b in hooks]

tbl = Table(table_data, colWidths=[3.3*inch, 3.1*inch])
tbl.setStyle(TableStyle([
    ("BACKGROUND", (0,0), (-1,0), colors.HexColor("#0B3D91")),
    ("TEXTCOLOR", (0,0), (-1,0), colors.white),
    ("GRID", (0,0), (-1,-1), 0.5, colors.HexColor("#AAAAAA")),
    ("ROWBACKGROUNDS", (0,1), (-1,-1), [colors.HexColor("#FDF3E7"), colors.white]),
    ("VALIGN", (0,0), (-1,-1), "MIDDLE"),
    ("LEFTPADDING", (0,0), (-1,-1), 6),
    ("RIGHTPADDING", (0,0), (-1,-1), 6),
    ("TOPPADDING", (0,0), (-1,-1), 4),
    ("BOTTOMPADDING", (0,0), (-1,-1), 4),
]))
story.append(tbl)

story.append(Spacer(1, 10))
story.append(HRFlowable(width="100%", thickness=0.6, color=colors.HexColor("#AAAAAA")))
story.append(Spacer(1, 4))
story.append(Paragraph(
    "Source: Clinically Oriented Anatomy - Joints of Upper Limb (Rotator Cuff, AC Joint, Glenohumeral Dislocation, Glenoid Labrum, Adhesive Capsulitis). For study reference only, not a clinical diagnostic tool.",
    ParagraphStyle("footer", parent=styles["Normal"], fontSize=7, textColor=colors.HexColor("#777777"))
))

doc = SimpleDocTemplate(
    OUT, pagesize=letter,
    topMargin=0.5*inch, bottomMargin=0.5*inch,
    leftMargin=0.6*inch, rightMargin=0.6*inch,
    title="Shoulder Injuries Cheat Sheet"
)
doc.build(story)
print("Saved:", OUT)
Running Command

cd /tmp/workspace/shoulder-cheatsheet && python3 build_pdf.py

Built successfully. Here's your quick reference card:

Shoulder Injuries Cheat Sheet

PDF Document · PDF

It covers AC joint dislocation, calcific tendinitis, rotator cuff injuries, glenohumeral dislocation, glenoid labrum tears, and adhesive capsulitis, plus a quick memory-hook table at the end for fast recall.
This is a shared conversation. Sign in to Orris to start your own chat.