Add spine_coder package (core + dataset + tests)
Browse files- spine_coder/__init__.py +9 -0
- spine_coder/__pycache__/__init__.cpython-312.pyc +0 -0
- spine_coder/__pycache__/spine_coder_core.cpython-312.pyc +0 -0
- spine_coder/spine_coder/__init__.py +9 -0
- spine_coder/spine_coder/__pycache__/__init__.cpython-312.pyc +0 -0
- spine_coder/spine_coder/__pycache__/spine_coder_core.cpython-312.pyc +0 -0
- spine_coder/spine_coder/spine_coder_core.py +399 -0
- spine_coder/spine_coder/synthetic_dataset/generate_synthetic.py +58 -0
- spine_coder/spine_coder/synthetic_dataset/notes_500.csv +501 -0
- spine_coder/spine_coder/synthetic_dataset/notes_500.jsonl +0 -0
- spine_coder/spine_coder/tests/__pycache__/conftest.cpython-312-pytest-8.4.2.pyc +0 -0
- spine_coder/spine_coder/tests/__pycache__/test_conflicts.cpython-312-pytest-8.4.2.pyc +0 -0
- spine_coder/spine_coder/tests/__pycache__/test_coverage_and_modifiers.cpython-312-pytest-8.4.2.pyc +0 -0
- spine_coder/spine_coder/tests/__pycache__/test_dataset_basic.cpython-312-pytest-8.4.2.pyc +0 -0
- spine_coder/spine_coder/tests/conftest.py +5 -0
- spine_coder/spine_coder/tests/test_conflicts.py +9 -0
- spine_coder/spine_coder/tests/test_coverage_and_modifiers.py +28 -0
- spine_coder/spine_coder/tests/test_dataset_basic.py +23 -0
- spine_coder/spine_coder_core.py +399 -0
- spine_coder/synthetic_dataset/generate_synthetic.py +58 -0
- spine_coder/synthetic_dataset/notes_500.csv +501 -0
- spine_coder/synthetic_dataset/notes_500.jsonl +0 -0
- spine_coder/tests/__pycache__/conftest.cpython-312-pytest-8.4.2.pyc +0 -0
- spine_coder/tests/__pycache__/test_conflicts.cpython-312-pytest-8.4.2.pyc +0 -0
- spine_coder/tests/__pycache__/test_coverage_and_modifiers.cpython-312-pytest-8.4.2.pyc +0 -0
- spine_coder/tests/__pycache__/test_dataset_basic.cpython-312-pytest-8.4.2.pyc +0 -0
- spine_coder/tests/conftest.py +5 -0
- spine_coder/tests/test_conflicts.py +9 -0
- spine_coder/tests/test_coverage_and_modifiers.py +28 -0
- spine_coder/tests/test_dataset_basic.py +23 -0
spine_coder/__init__.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
__all__ = ["spine_coder_core"]
|
| 2 |
+
__version__ = "1.0"
|
| 3 |
+
|
| 4 |
+
# Ensure pytest & Colab both see this folder as a package
|
| 5 |
+
import os, sys
|
| 6 |
+
root = os.path.abspath(os.path.dirname(__file__) + "/..")
|
| 7 |
+
if root not in sys.path:
|
| 8 |
+
sys.path.insert(0, root)
|
| 9 |
+
print("spine_coder package ready:", __version__)
|
spine_coder/__pycache__/__init__.cpython-312.pyc
ADDED
|
Binary file (606 Bytes). View file
|
|
|
spine_coder/__pycache__/spine_coder_core.cpython-312.pyc
ADDED
|
Binary file (26.2 kB). View file
|
|
|
spine_coder/spine_coder/__init__.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
__all__ = ["spine_coder_core"]
|
| 2 |
+
__version__ = "1.0"
|
| 3 |
+
|
| 4 |
+
# Ensure pytest & Colab both see this folder as a package
|
| 5 |
+
import os, sys
|
| 6 |
+
root = os.path.abspath(os.path.dirname(__file__) + "/..")
|
| 7 |
+
if root not in sys.path:
|
| 8 |
+
sys.path.insert(0, root)
|
| 9 |
+
print("spine_coder package ready:", __version__)
|
spine_coder/spine_coder/__pycache__/__init__.cpython-312.pyc
ADDED
|
Binary file (606 Bytes). View file
|
|
|
spine_coder/spine_coder/__pycache__/spine_coder_core.cpython-312.pyc
ADDED
|
Binary file (26.2 kB). View file
|
|
|
spine_coder/spine_coder/spine_coder_core.py
ADDED
|
@@ -0,0 +1,399 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
import re, json
|
| 3 |
+
from typing import Dict, Any, List, Tuple
|
| 4 |
+
|
| 5 |
+
# ---------- helpers ----------
|
| 6 |
+
def _norm(s: str) -> str:
|
| 7 |
+
if not s: return ""
|
| 8 |
+
s = s.replace("\u2013","-").replace("\u2014","-").replace("—","-").replace("–","-").replace("\u00A0"," ")
|
| 9 |
+
s = re.sub(r"\s+", " ", s.strip().lower())
|
| 10 |
+
return s
|
| 11 |
+
|
| 12 |
+
def _has(text: str, pat: str) -> bool:
|
| 13 |
+
return re.search(pat, text, flags=re.I) is not None
|
| 14 |
+
|
| 15 |
+
def _level_sort_key(lv: str) -> Tuple[int, int]:
|
| 16 |
+
band = {"C":100, "T":200, "L":300, "S":400}.get(lv[0], 999)
|
| 17 |
+
num = int(re.sub(r"\D", "", lv) or 0)
|
| 18 |
+
return (band, num)
|
| 19 |
+
|
| 20 |
+
def _extract_levels(t: str) -> List[str]:
|
| 21 |
+
levels = set()
|
| 22 |
+
for m in re.finditer(r"\b([CTLS])\s?(\d{1,2})\s*[-–]\s*([CTLS])?\s?(\d{1,2})\b", t, flags=re.I):
|
| 23 |
+
pfx1, n1, pfx2, n2 = m.group(1).upper(), int(m.group(2)), (m.group(3) or m.group(1)).upper(), int(m.group(4))
|
| 24 |
+
if pfx1 != pfx2:
|
| 25 |
+
levels.add(f"{pfx1}{n1}"); levels.add(f"{pfx2}{n2}")
|
| 26 |
+
else:
|
| 27 |
+
lo, hi = sorted([n1, n2])
|
| 28 |
+
for k in range(lo, hi+1): levels.add(f"{pfx1}{k}")
|
| 29 |
+
for m in re.finditer(r"\b([CTLS])\s?(\d{1,2})\b", t, flags=re.I):
|
| 30 |
+
levels.add(f"{m.group(1).upper()}{int(m.group(2))}")
|
| 31 |
+
return sorted(levels, key=_level_sort_key)
|
| 32 |
+
|
| 33 |
+
def _count_interspaces(levels: List[str]) -> int:
|
| 34 |
+
if not levels: return 0
|
| 35 |
+
by_band: Dict[str, List[int]] = {}
|
| 36 |
+
for lv in levels:
|
| 37 |
+
by_band.setdefault(lv[0], []).append(int(re.sub(r"\D", "", lv)))
|
| 38 |
+
for b in list(by_band): by_band[b] = sorted(set(by_band[b]))
|
| 39 |
+
inters = 0
|
| 40 |
+
for arr in by_band.values():
|
| 41 |
+
if len(arr) >= 2:
|
| 42 |
+
inters += sum(1 for i in range(1, len(arr)) if arr[i]-arr[i-1]==1)
|
| 43 |
+
if "L5" in levels and "S1" in levels: inters += 1
|
| 44 |
+
if inters == 0:
|
| 45 |
+
for arr in by_band.values():
|
| 46 |
+
if len(arr) >= 2: inters = 1; break
|
| 47 |
+
return inters
|
| 48 |
+
|
| 49 |
+
def _span_segments(levels: List[str]) -> int:
|
| 50 |
+
if not levels: return 0
|
| 51 |
+
by_band: Dict[str, List[int]] = {}
|
| 52 |
+
for lv in levels:
|
| 53 |
+
by_band.setdefault(lv[0], []).append(int(re.sub(r"\D", "", lv)))
|
| 54 |
+
spans = []
|
| 55 |
+
for arr in by_band.values():
|
| 56 |
+
arr = sorted(set(arr))
|
| 57 |
+
spans.append(arr[-1]-arr[0]+1 if len(arr)>=2 else 1)
|
| 58 |
+
return (max(spans) if spans else 0) if len(spans)==1 else max(spans + [2])
|
| 59 |
+
|
| 60 |
+
def _laterality_mods(t: str) -> List[str]:
|
| 61 |
+
mods: List[str] = []
|
| 62 |
+
if _has(t, r"\bleft\b|left-sided|left side|leftward|hemilam\w* left|foraminotomy left|\blt\b"):
|
| 63 |
+
mods.append("LT")
|
| 64 |
+
# tighten RIGHT: drop bare \brt\b to avoid accidental hits
|
| 65 |
+
if _has(t, r"\bright\b|right-sided|right side|rightward|hemilam\w* right|foraminotomy right"):
|
| 66 |
+
mods.append("RT")
|
| 67 |
+
return list(sorted(set(mods)))
|
| 68 |
+
|
| 69 |
+
def _add(suggestions: List[Dict[str, Any]], cpt: str, desc: str, rationale: str,
|
| 70 |
+
category: str, primary: bool, confidence: float = 0.8, units: int = 1,
|
| 71 |
+
mods: List[str] = None, score: float = None):
|
| 72 |
+
suggestions.append({
|
| 73 |
+
"cpt": cpt, "desc": desc, "rationale": rationale, "category": category,
|
| 74 |
+
"primary": primary, "confidence": confidence, "units": units,
|
| 75 |
+
"modifiers": mods or [], "score": score if score is not None else confidence
|
| 76 |
+
})
|
| 77 |
+
|
| 78 |
+
def _inst_code_by_span(span_segments: int, anterior: bool) -> str:
|
| 79 |
+
if span_segments <= 1: return ""
|
| 80 |
+
if anterior:
|
| 81 |
+
return "22845" if span_segments <= 3 else ("22846" if span_segments <= 7 else "22847")
|
| 82 |
+
else:
|
| 83 |
+
return "22842" if span_segments <= 3 else ("22843" if span_segments <= 7 else "22844")
|
| 84 |
+
|
| 85 |
+
# ---------- main ----------
|
| 86 |
+
def suggest_with_cpt_billing(note: str, payer: str = "Medicare", top_k: int = 10) -> Dict[str, Any]:
|
| 87 |
+
t = _norm(note)
|
| 88 |
+
suggestions: List[Dict[str, Any]] = []
|
| 89 |
+
case_modifiers: List[Dict[str, str]] = []
|
| 90 |
+
|
| 91 |
+
levels = _extract_levels(t)
|
| 92 |
+
inters = _count_interspaces(levels)
|
| 93 |
+
span = _span_segments(levels)
|
| 94 |
+
lat_mods = _laterality_mods(t)
|
| 95 |
+
|
| 96 |
+
# ---------- Region ----------
|
| 97 |
+
region = "unknown"
|
| 98 |
+
if any(l.startswith("C") for l in levels) or _has(t, r"\bcervic"): region = "cervical"
|
| 99 |
+
elif any(l.startswith("T") for l in levels) or _has(t, r"\bthorac"): region = "thoracic"
|
| 100 |
+
elif any(l.startswith(("L","S")) for l in levels) or _has(t, r"\blumbar|sacrum"): region = "lumbar"
|
| 101 |
+
|
| 102 |
+
# Helper flags
|
| 103 |
+
mentions_plate_ant = _has(t, r"\b(anterior (plate|instrument(ation)?)|plate fixed|plating)\b") or _has(t, r"\bplate\b")
|
| 104 |
+
mentions_pedicle = _has(t, r"\bpedicle screw|pedicle-screw|pedicle fixation|s2ai\b")
|
| 105 |
+
mentions_rod = _has(t, r"\brod(s)?\b")
|
| 106 |
+
mentions_inst_post = mentions_pedicle or mentions_rod or _has(t, r"\binstrument(ation)?\b")
|
| 107 |
+
|
| 108 |
+
did_corpectomy = False
|
| 109 |
+
no_decompression_due_to_revision = False
|
| 110 |
+
avoid_decompression_for_stimulator = False
|
| 111 |
+
|
| 112 |
+
# ---------- (1) Hardware removal (support both word orders) ----------
|
| 113 |
+
rem_pat_either = (
|
| 114 |
+
r"(?:\b(hardware|instrumentation|implant|plate|rod|screw)\b.{0,40}\b(remov\w+|explant\w+|taken out))"
|
| 115 |
+
r"|(?:\bremov\w+\b.{0,40}\b(hardware|instrumentation|implant|plate|rod|screw)\b)"
|
| 116 |
+
)
|
| 117 |
+
if _has(t, rem_pat_either):
|
| 118 |
+
if _has(t, r"\banterior\b|acdf|alif|anterior plate|smith[- ]?robinson"):
|
| 119 |
+
_add(suggestions, "22855", "Removal of anterior instrumentation",
|
| 120 |
+
"Anterior hardware removal documented.", "hardware_removal", True, 0.85, mods=lat_mods)
|
| 121 |
+
elif _has(t, r"non[- ]?segmental|hook|wire") and not _has(t, r"segmental|pedicle"):
|
| 122 |
+
_add(suggestions, "22850", "Removal of posterior non-segmental instrumentation",
|
| 123 |
+
"Posterior non-segmental removal documented.", "hardware_removal", True, 0.82, mods=lat_mods)
|
| 124 |
+
else:
|
| 125 |
+
_add(suggestions, "22852", "Removal of posterior segmental instrumentation",
|
| 126 |
+
"Posterior segmental hardware removal documented.", "hardware_removal", True, 0.85, mods=lat_mods)
|
| 127 |
+
|
| 128 |
+
# If remove + replace/reinsert/revision language → add 22849 and avoid decompression auto-fires
|
| 129 |
+
if _has(t, r"\b(reinsertion|remove and replace|revision of instrumentation|hardware revision)\b"):
|
| 130 |
+
_add(suggestions, "22849", "Reinsertion/revision of spinal instrumentation",
|
| 131 |
+
"Revision/reinsertion documented.", "revision", True, 0.85)
|
| 132 |
+
no_decompression_due_to_revision = True
|
| 133 |
+
|
| 134 |
+
# ---------- (2) ACDF with guards (history/removal) ----------
|
| 135 |
+
found_removal = _has(t, rem_pat_either)
|
| 136 |
+
acdf_history = _has(t, r"\b(prior|previous|history of|s/?p)\s*acdf\b")
|
| 137 |
+
acdf_current = _has(t, r"\banterior cervical discectomy|anterior cervical fusion|smith[- ]?robinson\b")
|
| 138 |
+
if (acdf_current or (_has(t, r"\bacdf\b") and not acdf_history)) and not (found_removal and not acdf_current):
|
| 139 |
+
n = max(1, inters or 1)
|
| 140 |
+
_add(suggestions, "22551", "ACDF, first interspace (includes discectomy)",
|
| 141 |
+
"Anterior cervical fusion pattern detected.", "ACDF", True, 0.95, mods=lat_mods)
|
| 142 |
+
if n > 1:
|
| 143 |
+
_add(suggestions, "22552", f"ACDF, each additional interspace ×{n-1}",
|
| 144 |
+
"Multi-level ACDF.", "ACDF add-on", False, 0.9, units=(n-1), mods=lat_mods)
|
| 145 |
+
if mentions_plate_ant:
|
| 146 |
+
code = _inst_code_by_span(span or (n+1), anterior=True)
|
| 147 |
+
if code:
|
| 148 |
+
desc = {"22845":"Anterior instrumentation (2–3 segments)",
|
| 149 |
+
"22846":"Anterior instrumentation (4–7 segments)",
|
| 150 |
+
"22847":"Anterior instrumentation (8+ segments)"}[code]
|
| 151 |
+
_add(suggestions, code, desc, "Anterior plate present; span estimated from levels.", "instrumentation", False, 0.8)
|
| 152 |
+
|
| 153 |
+
# ---------- (3) TLIF / PLIF (beats posterior fusion) ----------
|
| 154 |
+
if _has(t, r"\btlif\b|\bplif\b|posterior interbody fusion"):
|
| 155 |
+
n = max(1, inters or 1)
|
| 156 |
+
_add(suggestions, "22633", "Posterior/posterolateral + posterior interbody, single level",
|
| 157 |
+
"TLIF/PLIF pattern: posterior approach + cage + screws.", "TLIF/PLIF", True, 0.92, mods=lat_mods)
|
| 158 |
+
if n > 1:
|
| 159 |
+
_add(suggestions, "22634", f"Posterior interbody each additional interspace ×{n-1}",
|
| 160 |
+
"Multi-level TLIF/PLIF.", "TLIF/PLIF add-on", False, 0.88, units=(n-1), mods=lat_mods)
|
| 161 |
+
if mentions_inst_post:
|
| 162 |
+
code = _inst_code_by_span(span or (n+1), anterior=False)
|
| 163 |
+
if code:
|
| 164 |
+
desc = {"22842":"Posterior segmental instrumentation (2–3 segments)",
|
| 165 |
+
"22843":"Posterior segmental instrumentation (4–7 segments)",
|
| 166 |
+
"22844":"Posterior segmental instrumentation (8+ segments)"}[code]
|
| 167 |
+
_add(suggestions, code, desc, "Posterior instrumentation detected.", "instrumentation", False, 0.82)
|
| 168 |
+
|
| 169 |
+
# ---------- (4) ALIF ----------
|
| 170 |
+
if _has(t, r"\balif\b|anterior lumbar interbody fusion"):
|
| 171 |
+
n = max(1, inters or 1)
|
| 172 |
+
_add(suggestions, "22558", "Anterior lumbar interbody fusion, single interspace",
|
| 173 |
+
"ALIF detected.", "ALIF", True, 0.9)
|
| 174 |
+
if n > 1:
|
| 175 |
+
_add(suggestions, "22585", f"ALIF each additional interspace ×{n-1}",
|
| 176 |
+
"Multi-level ALIF.", "ALIF add-on", False, 0.86, units=(n-1))
|
| 177 |
+
if mentions_plate_ant:
|
| 178 |
+
code = _inst_code_by_span(span or (n+1), anterior=True)
|
| 179 |
+
if code:
|
| 180 |
+
desc = {"22845":"Anterior instrumentation (2–3 segments)",
|
| 181 |
+
"22846":"Anterior instrumentation (4–7 segments)",
|
| 182 |
+
"22847":"Anterior instrumentation (8+ segments)"}[code]
|
| 183 |
+
_add(suggestions, code, desc, "Anterior plate present; span estimated from levels.", "instrumentation", False, 0.8)
|
| 184 |
+
|
| 185 |
+
# ---------- (5) Posterolateral/posterior fusion WITHOUT interbody ----------
|
| 186 |
+
if (_has(t, r"posterolateral\b.*\bfusion|post[- ]?lat\b.*\bfusion|posterior\b.*\bfusion|in situ\b.*\bfusion")
|
| 187 |
+
and not _has(t, r"\btlif\b|\bplif\b|posterior interbody")):
|
| 188 |
+
base_map = {"cervical":"22600", "thoracic":"22610", "lumbar":"22612"}
|
| 189 |
+
base = base_map.get(region, "22612")
|
| 190 |
+
_add(suggestions, base, f"Posterolateral/posterior fusion, first level ({region})",
|
| 191 |
+
"Posterior fusion without interbody.", "posterior_fusion", True, 0.78, mods=lat_mods)
|
| 192 |
+
add_units = max(0, inters)
|
| 193 |
+
if add_units:
|
| 194 |
+
_add(suggestions, "22614", f"Posterior fusion each additional segment ×{add_units}",
|
| 195 |
+
"Multi-level posterior fusion.", "posterior_fusion add-on", False, 0.72, units=add_units, mods=lat_mods)
|
| 196 |
+
if mentions_inst_post:
|
| 197 |
+
n_seg = span or max(2, (inters + 1))
|
| 198 |
+
code = _inst_code_by_span(n_seg, anterior=False)
|
| 199 |
+
if code:
|
| 200 |
+
desc = {"22842":"Posterior segmental instrumentation (2–3 segments)",
|
| 201 |
+
"22843":"Posterior segmental instrumentation (4–7 segments)",
|
| 202 |
+
"22844":"Posterior segmental instrumentation (8+ segments)"}[code]
|
| 203 |
+
_add(suggestions, code, desc, "Posterior instrumentation detected.", "instrumentation", False, 0.8)
|
| 204 |
+
|
| 205 |
+
# ---------- (6) Neurostimulator paddle + IPG ----------
|
| 206 |
+
if _has(t, r"\bstimulator\b|paddle lead|spinal cord stimulator|scs") and _has(t, r"\blaminectomy\b|laminotomy"):
|
| 207 |
+
_add(suggestions, "63655", "Laminectomy for implantation of neurostimulator paddle electrodes",
|
| 208 |
+
"Paddle lead placed via laminectomy.", "neurostimulator", True, 0.86)
|
| 209 |
+
if _has(t, r"\bpulse generator\b|ipg|implantable pulse generator|battery\b"):
|
| 210 |
+
_add(suggestions, "63685", "Insertion or replacement of IPG",
|
| 211 |
+
"Pulse generator implanted.", "neurostimulator", False, 0.84)
|
| 212 |
+
avoid_decompression_for_stimulator = True
|
| 213 |
+
|
| 214 |
+
# ---------- (7) Decompression (guarded: no history/corpectomy/revision/stimulator) ----------
|
| 215 |
+
if (not no_decompression_due_to_revision) and (not avoid_decompression_for_stimulator):
|
| 216 |
+
if _has(t, r"\bdecompression(s)?\b|laminectom(y|ies)|laminotom(y|ies)|foraminotom(y|ies)|foraminal decompression(s)?|neuroforamen|lateral recess|central stenosis") \
|
| 217 |
+
and not _has(t, r"\b(prior|previous|history of|s/?p)\s+(decompression|laminectomy|laminotomy|foraminotomy)\b"):
|
| 218 |
+
base_map = {"cervical":"63045", "thoracic":"63046", "lumbar":"63047"}
|
| 219 |
+
base = base_map.get(region, "63047")
|
| 220 |
+
_add(suggestions, base, "Decompression, first level", "Decompression terms detected.", "decompression", True, 0.82, mods=lat_mods)
|
| 221 |
+
if _has(t, r"additional level|two levels|three levels|multi|levels|l\d-?l\d|c\d-?c\d|t\d-?t\d"):
|
| 222 |
+
extra = max(1, inters)
|
| 223 |
+
_add(suggestions, "63048", f"Decompression, each additional level ×{extra}",
|
| 224 |
+
"Multi-level decompression inferred.", "decompression add-on", False, 0.78, units=extra, mods=lat_mods)
|
| 225 |
+
|
| 226 |
+
# ---------- (8) Interspinous/interlaminar device ----------
|
| 227 |
+
if _has(t, r"\bcoflex\b|interspinous|interlaminar device|ipd"):
|
| 228 |
+
_add(suggestions, "22868", "Insertion of interspinous/interlaminar device",
|
| 229 |
+
"Coflex/IPD insertion documented.", "interspinous", True, 0.86, mods=lat_mods)
|
| 230 |
+
|
| 231 |
+
# ---------- (9) Cervical disc arthroplasty ----------
|
| 232 |
+
if _has(t, r"cervical (arthroplasty|artificial disc|disc replacement)|\bcda\b") or (
|
| 233 |
+
(region == "cervical") and _has(t, r"\barthroplasty\b|artificial disc|disc replacement")
|
| 234 |
+
):
|
| 235 |
+
n = max(1, inters or 1)
|
| 236 |
+
_add(suggestions, "22856", "Cervical disc arthroplasty, single level",
|
| 237 |
+
"Cervical disc arthroplasty documented.", "arthroplasty", True, 0.87, mods=lat_mods)
|
| 238 |
+
if n > 1:
|
| 239 |
+
_add(suggestions, "22858", f"Cervical disc arthroplasty, each additional level ×{n-1}",
|
| 240 |
+
"Multi-level arthroplasty.", "arthroplasty add-on", False, 0.84, units=(n-1), mods=lat_mods)
|
| 241 |
+
|
| 242 |
+
# ---------- (10) Tumor / corpectomy ----------
|
| 243 |
+
# Cervical corpectomy
|
| 244 |
+
if _has(t, r"\bcorpectomy\b") and (region == "cervical" or _has(t, r"\bcervic")):
|
| 245 |
+
_add(suggestions, "63081", "Cervical corpectomy for decompression, first segment",
|
| 246 |
+
"Cervical corpectomy documented.", "tumor/corpectomy", True, 0.86)
|
| 247 |
+
# rough extra estimate
|
| 248 |
+
if _has(t, r"additional (level|segment)|two levels|three levels|multi|c\d-?c\d"):
|
| 249 |
+
extra = max(1, inters or 1)
|
| 250 |
+
_add(suggestions, "63082", f"Each additional cervical segment ×{extra}",
|
| 251 |
+
"Multi-segment cervical corpectomy.", "tumor/corpectomy add-on", False, 0.82, units=extra)
|
| 252 |
+
did_corpectomy = True
|
| 253 |
+
# Thoracic/Lumbar corpectomy (guard away from cervical)
|
| 254 |
+
if _has(t, r"\btumou?r\b|metastatic|metastasis|en bloc") or (_has(t, r"\bcorpectomy\b") and region in {"thoracic","lumbar"}):
|
| 255 |
+
_add(suggestions, "63085", "Vertebral corpectomy for decompression (thoracic/lumbar), first segment",
|
| 256 |
+
"Tumor/corpectomy documented.", "tumor/corpectomy", True, 0.84)
|
| 257 |
+
if _has(t, r"additional (level|segment)|two levels|three levels|multi|t\d-?t\d|l\d-?l\d"):
|
| 258 |
+
_add(suggestions, "63086", "Each additional segment (thoracic/lumbar) ×1+",
|
| 259 |
+
"Multi-segment corpectomy.", "tumor/corpectomy add-on", False, 0.8)
|
| 260 |
+
did_corpectomy = True
|
| 261 |
+
|
| 262 |
+
# If corpectomy present, suppress decompression rows
|
| 263 |
+
if did_corpectomy:
|
| 264 |
+
suggestions = [r for r in suggestions if r["category"] != "decompression" and r["cpt"] not in {"63045","63046","63047","63048"}]
|
| 265 |
+
|
| 266 |
+
# ---------- (11) Deformity / Smith-Petersen osteotomy ----------
|
| 267 |
+
if _has(t, r"\bspo\b|smith[- ]?petersen|posterior column osteotomy|osteotomy"):
|
| 268 |
+
base_map = {"cervical":"22210", "thoracic":"22214", "lumbar":"22206"}
|
| 269 |
+
base = base_map.get(region, "22206")
|
| 270 |
+
_add(suggestions, base, "Posterior column osteotomy (Smith-Petersen), first level",
|
| 271 |
+
"Deformity correction with SPO documented.", "deformity", True, 0.83)
|
| 272 |
+
if _has(t, r"additional (level|segment)|two levels|three levels|multi"):
|
| 273 |
+
# For simplicity keep base+1 add-on mapping
|
| 274 |
+
_add(suggestions, str(int(base)+1), "Each additional vertebral segment ×1+",
|
| 275 |
+
"Multi-level osteotomy.", "deformity add-on", False, 0.78)
|
| 276 |
+
|
| 277 |
+
# ---------- (12) Kyphoplasty / vertebral augmentation ----------
|
| 278 |
+
if _has(t, r"\bkyphoplasty\b|vertebroplasty|cement (augmentation|injection)"):
|
| 279 |
+
base_map = {"cervical":"22510", "thoracic":"22513", "lumbar":"22514"}
|
| 280 |
+
base = base_map.get(region, "22514")
|
| 281 |
+
_add(suggestions, base, "Percutaneous vertebral augmentation, first level",
|
| 282 |
+
"Vertebral augmentation terms present.", "percutaneous", True, 0.82)
|
| 283 |
+
if _has(t, r"additional (level|segment)|two levels|three levels|multi"):
|
| 284 |
+
_add(suggestions, "22515", "Each additional vertebral body ×1+",
|
| 285 |
+
"Multi-level augmentation.", "percutaneous add-on", False, 0.8)
|
| 286 |
+
|
| 287 |
+
# ---------- (13) Pelvic fixation ----------
|
| 288 |
+
if _has(t, r"\bpelvic fixation\b|iliac bolt|iliac screw|s2ai"):
|
| 289 |
+
_add(suggestions, "22848", "Pelvic fixation (attach instrumentation to pelvis)",
|
| 290 |
+
"Iliac/pelvic fixation documented.", "pelvic_fixation", False, 0.84)
|
| 291 |
+
|
| 292 |
+
# ---------- (14) Bone grafts (prefer structural 20931 over 20930) ----------
|
| 293 |
+
structural_like = _has(t, r"\b(structural allograft|fibular strut|strut graft|allograft spacer(s)?|interbody allograft spacer(s)?)\b")
|
| 294 |
+
any_allograft = _has(t, r"\ballograft\b|dbm|demineralized|osteo.?promotive")
|
| 295 |
+
|
| 296 |
+
if _has(t, r"\bautograft\b|iliac crest harvest|icbg"):
|
| 297 |
+
_add(suggestions, "20937", "Autograft (separate incision)",
|
| 298 |
+
"Autograft harvest documented.", "bone_graft", False, 0.8)
|
| 299 |
+
|
| 300 |
+
if structural_like:
|
| 301 |
+
_add(suggestions, "20931", "Structural allograft",
|
| 302 |
+
"Structural allograft documented.", "bone_graft", False, 0.8)
|
| 303 |
+
elif any_allograft:
|
| 304 |
+
_add(suggestions, "20930", "Allograft, morselized / osteopromotive material",
|
| 305 |
+
"Allograft/DBM documented.", "bone_graft", False, 0.8)
|
| 306 |
+
|
| 307 |
+
if _has(t, r"\bbmp\b|biologic|recombinant growth factor|rhbmp"):
|
| 308 |
+
_add(suggestions, "20939", "Osteopromotive biologic (e.g., BMP)",
|
| 309 |
+
"BMP/biologic documented.", "bone_graft", False, 0.8)
|
| 310 |
+
|
| 311 |
+
# ---------- Case Modifiers ----------
|
| 312 |
+
mod_map = {
|
| 313 |
+
"22": r"\b(complex|difficult|prolonged|adhesiolysis|severe deformity|morbid obesity)\b",
|
| 314 |
+
"50": r"\b(both sides|bilaterally|bilateral(?!\s*(pedicle|screw|screws|rod|rods|instrumentation)))\b",
|
| 315 |
+
"52": r"\bpartial|limited|reduced service\b",
|
| 316 |
+
"53": r"\baborted|terminated|discontinued\b",
|
| 317 |
+
"59": r"\bseparate (site|incision)|distinct|different level\b",
|
| 318 |
+
"62": r"\bco[- ]?surgeon|two surgeons|co-surgeons\b",
|
| 319 |
+
"78": r"\breturn to or\b|\bunplanned return\b",
|
| 320 |
+
"79": r"\bunrelated procedure\b",
|
| 321 |
+
"80": r"\bassistant surgeon|assistant present\b",
|
| 322 |
+
"82": r"\bresident not available\b"
|
| 323 |
+
}
|
| 324 |
+
reasons = {
|
| 325 |
+
"22": "Increased procedural service (complexity).",
|
| 326 |
+
"50": "Bilateral procedure documented.",
|
| 327 |
+
"52": "Reduced service (limited portion performed).",
|
| 328 |
+
"53": "Procedure discontinued for safety.",
|
| 329 |
+
"59": "Distinct procedural service (separate site/level).",
|
| 330 |
+
"62": "Two surgeons (co-surgeons) documented.",
|
| 331 |
+
"78": "Unplanned return to OR during global period.",
|
| 332 |
+
"79": "Unrelated procedure during postoperative period.",
|
| 333 |
+
"80": "Assistant surgeon documented.",
|
| 334 |
+
"82": "Assistant surgeon; resident not available."
|
| 335 |
+
}
|
| 336 |
+
for k, pat in mod_map.items():
|
| 337 |
+
if _has(t, pat): case_modifiers.append({"modifier": k, "reason": reasons[k]})
|
| 338 |
+
|
| 339 |
+
# EXPLICIT_BILATERAL_DECOMP: If 'bilateral' appears near decompression nouns, force 50 if not already set
|
| 340 |
+
if not any(m["modifier"]=="50" for m in case_modifiers):
|
| 341 |
+
if _has(t, r"\bbilateral\b") and _has(t, r"(foraminotom(y|ies)|facetectom(y|ies)|laminectom(y|ies)|laminotom(y|ies))"):
|
| 342 |
+
case_modifiers.append({"modifier":"50","reason": reasons["50"]})
|
| 343 |
+
|
| 344 |
+
# --- Modifier sanity rules ---
|
| 345 |
+
if any(m["modifier"]=="82" for m in case_modifiers):
|
| 346 |
+
case_modifiers = [m for m in case_modifiers if m["modifier"]!="80"]
|
| 347 |
+
if any(m["modifier"]=="53" for m in case_modifiers):
|
| 348 |
+
case_modifiers = [m for m in case_modifiers if m["modifier"]!="52"]
|
| 349 |
+
|
| 350 |
+
# Laterality: suppress row LT/RT if case has 50
|
| 351 |
+
lat_row_mods = [] if any(m["modifier"] == "50" for m in case_modifiers) else lat_mods
|
| 352 |
+
for row in suggestions:
|
| 353 |
+
if row["category"] in {"decompression","decompression add-on","TLIF/PLIF","posterior_fusion","posterior_fusion add-on"}:
|
| 354 |
+
if lat_row_mods and not row["modifiers"]:
|
| 355 |
+
row["modifiers"] = lat_row_mods
|
| 356 |
+
if any(m["modifier"] == "50" for m in case_modifiers):
|
| 357 |
+
for row in suggestions:
|
| 358 |
+
if row.get("modifiers"):
|
| 359 |
+
row["modifiers"] = [m for m in row["modifiers"] if m not in ("LT","RT")]
|
| 360 |
+
|
| 361 |
+
# ---------- Default guard ----------
|
| 362 |
+
if not suggestions:
|
| 363 |
+
suggestions = [{
|
| 364 |
+
"cpt": "00000",
|
| 365 |
+
"desc": "No recognizable spine CPT pattern found",
|
| 366 |
+
"rationale": "No fusion/decompression pattern detected.",
|
| 367 |
+
"confidence": 0.0, "category": "none", "primary": True, "modifiers": [], "units": 1, "score": 0.0
|
| 368 |
+
}]
|
| 369 |
+
|
| 370 |
+
# ---------- De-dup + order ----------
|
| 371 |
+
merged: Dict[Tuple[str, str, str, str], Dict[str, Any]] = {}
|
| 372 |
+
for r in suggestions:
|
| 373 |
+
key = (r["cpt"], r["desc"], r["category"], "|".join(sorted(r.get("modifiers", []))))
|
| 374 |
+
if key not in merged:
|
| 375 |
+
merged[key] = r.copy()
|
| 376 |
+
else:
|
| 377 |
+
merged[key]["units"] = merged[key].get("units", 1) + r.get("units", 1)
|
| 378 |
+
merged[key]["confidence"] = max(merged[key]["confidence"], r.get("confidence", 0.0))
|
| 379 |
+
merged[key]["score"] = max(merged[key]["score"], r.get("score", 0.0))
|
| 380 |
+
merged[key]["primary"] = merged[key]["primary"] or r.get("primary", False)
|
| 381 |
+
|
| 382 |
+
out = list(merged.values())
|
| 383 |
+
|
| 384 |
+
def _cpt_num(x: Dict[str, Any]) -> int:
|
| 385 |
+
try: return int(re.sub(r"\D","", x.get("cpt","0")) or 0)
|
| 386 |
+
except: return 0
|
| 387 |
+
|
| 388 |
+
out.sort(key=lambda r: (not r.get("primary", False), -(r.get("score", r.get("confidence",0.0))), _cpt_num(r)))
|
| 389 |
+
if isinstance(top_k, int) and top_k > 0: out = out[:top_k]
|
| 390 |
+
|
| 391 |
+
return {
|
| 392 |
+
"payer": payer,
|
| 393 |
+
"region": region,
|
| 394 |
+
"levels": levels,
|
| 395 |
+
"interspaces_est": inters,
|
| 396 |
+
"span_segments_est": span,
|
| 397 |
+
"suggestions": out,
|
| 398 |
+
"case_modifiers": case_modifiers
|
| 399 |
+
}
|
spine_coder/spine_coder/synthetic_dataset/generate_synthetic.py
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json, random
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
|
| 4 |
+
DATA_DIR = Path(__file__).resolve().parent
|
| 5 |
+
|
| 6 |
+
def main():
|
| 7 |
+
random.seed(42)
|
| 8 |
+
buckets = {
|
| 9 |
+
"tlif":90,"acdf":70,"alif":45,"postlat":45,"decomp":75,
|
| 10 |
+
"arthro":20,"instr":20,"removal":20,"coflex":10,"deformity":20,
|
| 11 |
+
"tumor":15,"percut":15,"edge":55
|
| 12 |
+
}
|
| 13 |
+
all_rows=[]
|
| 14 |
+
for bucket,n in buckets.items():
|
| 15 |
+
for i in range(n):
|
| 16 |
+
note=f"Simulated operative note for {bucket} case."
|
| 17 |
+
# 8 % of notes with co-surgeons
|
| 18 |
+
if random.random()<0.08:
|
| 19 |
+
note+=" Co-surgeons performed the procedure; two surgeons documented."
|
| 20 |
+
all_rows.append({
|
| 21 |
+
"id":f"{bucket}_{i}",
|
| 22 |
+
"note":note,
|
| 23 |
+
"region":"lumbar" if "l" in bucket else "cervical",
|
| 24 |
+
"approach":"posterior" if "post" in bucket or "tlif" in bucket else "anterior",
|
| 25 |
+
"intent":"fusion" if "f" in bucket else "decompression",
|
| 26 |
+
"levels":["L4","L5"],
|
| 27 |
+
"laterality":random.choice(["left","right","bilateral"]),
|
| 28 |
+
"flags":{},
|
| 29 |
+
"labels":[{"cpt":"22633" if "tlif" in bucket else "22551","desc":"demo"}]
|
| 30 |
+
})
|
| 31 |
+
jsonl=DATA_DIR/"notes_500.jsonl"
|
| 32 |
+
jsonl.write_text("\n".join(json.dumps(r) for r in all_rows))
|
| 33 |
+
csv=DATA_DIR/"notes_500.csv"
|
| 34 |
+
import pandas as pd
|
| 35 |
+
pd.DataFrame(all_rows).to_csv(csv,index=False)
|
| 36 |
+
print("✅ Wrote 500 synthetic cases to:", jsonl)
|
| 37 |
+
|
| 38 |
+
if __name__=="__main__":
|
| 39 |
+
main()
|
| 40 |
+
|
| 41 |
+
# === PATCH: complexity (modifier-22) seeding ===
|
| 42 |
+
def inject_complexity_phrase(note_dict):
|
| 43 |
+
import random
|
| 44 |
+
if random.random() < 0.10:
|
| 45 |
+
note_dict["note"] += " This was a complex, prolonged operative procedure due to severe deformity and scarring."
|
| 46 |
+
return note_dict
|
| 47 |
+
|
| 48 |
+
# Wrap main() write to include complexity seeding
|
| 49 |
+
_old_main = main
|
| 50 |
+
def main():
|
| 51 |
+
out = _old_main()
|
| 52 |
+
import json
|
| 53 |
+
data_file = Path(DATA_DIR) / "notes_500.jsonl"
|
| 54 |
+
lines = [json.loads(l) for l in data_file.read_text().splitlines() if l.strip()]
|
| 55 |
+
lines = [inject_complexity_phrase(l) for l in lines]
|
| 56 |
+
data_file.write_text("\n".join(json.dumps(x) for x in lines))
|
| 57 |
+
print("✅ Complexity phrases injected into ~10% of dataset")
|
| 58 |
+
return out
|
spine_coder/spine_coder/synthetic_dataset/notes_500.csv
ADDED
|
@@ -0,0 +1,501 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
id,note,region,approach,intent,levels,laterality,flags,labels
|
| 2 |
+
tlif_0,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 3 |
+
tlif_1,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 4 |
+
tlif_2,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 5 |
+
tlif_3,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 6 |
+
tlif_4,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 7 |
+
tlif_5,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 8 |
+
tlif_6,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 9 |
+
tlif_7,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 10 |
+
tlif_8,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 11 |
+
tlif_9,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 12 |
+
tlif_10,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 13 |
+
tlif_11,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 14 |
+
tlif_12,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 15 |
+
tlif_13,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 16 |
+
tlif_14,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 17 |
+
tlif_15,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 18 |
+
tlif_16,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 19 |
+
tlif_17,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 20 |
+
tlif_18,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 21 |
+
tlif_19,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 22 |
+
tlif_20,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 23 |
+
tlif_21,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 24 |
+
tlif_22,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 25 |
+
tlif_23,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 26 |
+
tlif_24,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 27 |
+
tlif_25,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 28 |
+
tlif_26,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 29 |
+
tlif_27,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 30 |
+
tlif_28,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 31 |
+
tlif_29,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 32 |
+
tlif_30,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 33 |
+
tlif_31,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 34 |
+
tlif_32,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 35 |
+
tlif_33,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 36 |
+
tlif_34,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 37 |
+
tlif_35,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 38 |
+
tlif_36,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 39 |
+
tlif_37,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 40 |
+
tlif_38,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 41 |
+
tlif_39,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 42 |
+
tlif_40,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 43 |
+
tlif_41,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 44 |
+
tlif_42,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 45 |
+
tlif_43,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 46 |
+
tlif_44,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 47 |
+
tlif_45,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 48 |
+
tlif_46,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 49 |
+
tlif_47,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 50 |
+
tlif_48,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 51 |
+
tlif_49,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 52 |
+
tlif_50,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 53 |
+
tlif_51,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 54 |
+
tlif_52,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 55 |
+
tlif_53,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 56 |
+
tlif_54,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 57 |
+
tlif_55,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 58 |
+
tlif_56,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 59 |
+
tlif_57,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 60 |
+
tlif_58,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 61 |
+
tlif_59,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 62 |
+
tlif_60,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 63 |
+
tlif_61,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 64 |
+
tlif_62,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 65 |
+
tlif_63,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 66 |
+
tlif_64,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 67 |
+
tlif_65,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 68 |
+
tlif_66,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 69 |
+
tlif_67,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 70 |
+
tlif_68,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 71 |
+
tlif_69,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 72 |
+
tlif_70,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 73 |
+
tlif_71,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 74 |
+
tlif_72,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 75 |
+
tlif_73,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 76 |
+
tlif_74,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 77 |
+
tlif_75,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 78 |
+
tlif_76,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 79 |
+
tlif_77,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 80 |
+
tlif_78,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 81 |
+
tlif_79,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 82 |
+
tlif_80,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 83 |
+
tlif_81,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 84 |
+
tlif_82,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 85 |
+
tlif_83,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 86 |
+
tlif_84,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 87 |
+
tlif_85,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 88 |
+
tlif_86,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 89 |
+
tlif_87,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 90 |
+
tlif_88,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 91 |
+
tlif_89,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 92 |
+
acdf_0,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 93 |
+
acdf_1,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 94 |
+
acdf_2,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 95 |
+
acdf_3,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 96 |
+
acdf_4,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 97 |
+
acdf_5,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 98 |
+
acdf_6,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 99 |
+
acdf_7,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 100 |
+
acdf_8,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 101 |
+
acdf_9,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 102 |
+
acdf_10,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 103 |
+
acdf_11,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 104 |
+
acdf_12,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 105 |
+
acdf_13,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 106 |
+
acdf_14,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 107 |
+
acdf_15,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 108 |
+
acdf_16,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 109 |
+
acdf_17,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 110 |
+
acdf_18,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 111 |
+
acdf_19,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 112 |
+
acdf_20,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 113 |
+
acdf_21,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 114 |
+
acdf_22,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 115 |
+
acdf_23,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 116 |
+
acdf_24,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 117 |
+
acdf_25,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 118 |
+
acdf_26,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 119 |
+
acdf_27,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 120 |
+
acdf_28,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 121 |
+
acdf_29,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 122 |
+
acdf_30,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 123 |
+
acdf_31,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 124 |
+
acdf_32,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 125 |
+
acdf_33,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 126 |
+
acdf_34,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 127 |
+
acdf_35,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 128 |
+
acdf_36,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 129 |
+
acdf_37,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 130 |
+
acdf_38,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 131 |
+
acdf_39,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 132 |
+
acdf_40,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 133 |
+
acdf_41,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 134 |
+
acdf_42,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 135 |
+
acdf_43,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 136 |
+
acdf_44,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 137 |
+
acdf_45,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 138 |
+
acdf_46,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 139 |
+
acdf_47,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 140 |
+
acdf_48,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 141 |
+
acdf_49,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 142 |
+
acdf_50,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 143 |
+
acdf_51,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 144 |
+
acdf_52,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 145 |
+
acdf_53,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 146 |
+
acdf_54,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 147 |
+
acdf_55,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 148 |
+
acdf_56,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 149 |
+
acdf_57,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 150 |
+
acdf_58,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 151 |
+
acdf_59,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 152 |
+
acdf_60,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 153 |
+
acdf_61,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 154 |
+
acdf_62,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 155 |
+
acdf_63,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 156 |
+
acdf_64,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 157 |
+
acdf_65,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 158 |
+
acdf_66,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 159 |
+
acdf_67,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 160 |
+
acdf_68,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 161 |
+
acdf_69,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 162 |
+
alif_0,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 163 |
+
alif_1,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 164 |
+
alif_2,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 165 |
+
alif_3,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 166 |
+
alif_4,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 167 |
+
alif_5,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 168 |
+
alif_6,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 169 |
+
alif_7,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 170 |
+
alif_8,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 171 |
+
alif_9,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 172 |
+
alif_10,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 173 |
+
alif_11,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 174 |
+
alif_12,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 175 |
+
alif_13,Simulated operative note for alif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 176 |
+
alif_14,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 177 |
+
alif_15,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 178 |
+
alif_16,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 179 |
+
alif_17,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 180 |
+
alif_18,Simulated operative note for alif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 181 |
+
alif_19,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 182 |
+
alif_20,Simulated operative note for alif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 183 |
+
alif_21,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 184 |
+
alif_22,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 185 |
+
alif_23,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 186 |
+
alif_24,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 187 |
+
alif_25,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 188 |
+
alif_26,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 189 |
+
alif_27,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 190 |
+
alif_28,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 191 |
+
alif_29,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 192 |
+
alif_30,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 193 |
+
alif_31,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 194 |
+
alif_32,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 195 |
+
alif_33,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 196 |
+
alif_34,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 197 |
+
alif_35,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 198 |
+
alif_36,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 199 |
+
alif_37,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 200 |
+
alif_38,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 201 |
+
alif_39,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 202 |
+
alif_40,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 203 |
+
alif_41,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 204 |
+
alif_42,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 205 |
+
alif_43,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 206 |
+
alif_44,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 207 |
+
postlat_0,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 208 |
+
postlat_1,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 209 |
+
postlat_2,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 210 |
+
postlat_3,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 211 |
+
postlat_4,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 212 |
+
postlat_5,Simulated operative note for postlat case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 213 |
+
postlat_6,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 214 |
+
postlat_7,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 215 |
+
postlat_8,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 216 |
+
postlat_9,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 217 |
+
postlat_10,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 218 |
+
postlat_11,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 219 |
+
postlat_12,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 220 |
+
postlat_13,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 221 |
+
postlat_14,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 222 |
+
postlat_15,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 223 |
+
postlat_16,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 224 |
+
postlat_17,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 225 |
+
postlat_18,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 226 |
+
postlat_19,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 227 |
+
postlat_20,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 228 |
+
postlat_21,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 229 |
+
postlat_22,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 230 |
+
postlat_23,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 231 |
+
postlat_24,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 232 |
+
postlat_25,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 233 |
+
postlat_26,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 234 |
+
postlat_27,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 235 |
+
postlat_28,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 236 |
+
postlat_29,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 237 |
+
postlat_30,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 238 |
+
postlat_31,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 239 |
+
postlat_32,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 240 |
+
postlat_33,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 241 |
+
postlat_34,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 242 |
+
postlat_35,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 243 |
+
postlat_36,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 244 |
+
postlat_37,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 245 |
+
postlat_38,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 246 |
+
postlat_39,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 247 |
+
postlat_40,Simulated operative note for postlat case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 248 |
+
postlat_41,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 249 |
+
postlat_42,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 250 |
+
postlat_43,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 251 |
+
postlat_44,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 252 |
+
decomp_0,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 253 |
+
decomp_1,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 254 |
+
decomp_2,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 255 |
+
decomp_3,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 256 |
+
decomp_4,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 257 |
+
decomp_5,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 258 |
+
decomp_6,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 259 |
+
decomp_7,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 260 |
+
decomp_8,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 261 |
+
decomp_9,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 262 |
+
decomp_10,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 263 |
+
decomp_11,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 264 |
+
decomp_12,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 265 |
+
decomp_13,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 266 |
+
decomp_14,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 267 |
+
decomp_15,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 268 |
+
decomp_16,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 269 |
+
decomp_17,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 270 |
+
decomp_18,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 271 |
+
decomp_19,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 272 |
+
decomp_20,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 273 |
+
decomp_21,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 274 |
+
decomp_22,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 275 |
+
decomp_23,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 276 |
+
decomp_24,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 277 |
+
decomp_25,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 278 |
+
decomp_26,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 279 |
+
decomp_27,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 280 |
+
decomp_28,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 281 |
+
decomp_29,Simulated operative note for decomp case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 282 |
+
decomp_30,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 283 |
+
decomp_31,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 284 |
+
decomp_32,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 285 |
+
decomp_33,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 286 |
+
decomp_34,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 287 |
+
decomp_35,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 288 |
+
decomp_36,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 289 |
+
decomp_37,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 290 |
+
decomp_38,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 291 |
+
decomp_39,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 292 |
+
decomp_40,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 293 |
+
decomp_41,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 294 |
+
decomp_42,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 295 |
+
decomp_43,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 296 |
+
decomp_44,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 297 |
+
decomp_45,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 298 |
+
decomp_46,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 299 |
+
decomp_47,Simulated operative note for decomp case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 300 |
+
decomp_48,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 301 |
+
decomp_49,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 302 |
+
decomp_50,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 303 |
+
decomp_51,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 304 |
+
decomp_52,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 305 |
+
decomp_53,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 306 |
+
decomp_54,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 307 |
+
decomp_55,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 308 |
+
decomp_56,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 309 |
+
decomp_57,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 310 |
+
decomp_58,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 311 |
+
decomp_59,Simulated operative note for decomp case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 312 |
+
decomp_60,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 313 |
+
decomp_61,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 314 |
+
decomp_62,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 315 |
+
decomp_63,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 316 |
+
decomp_64,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 317 |
+
decomp_65,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 318 |
+
decomp_66,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 319 |
+
decomp_67,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 320 |
+
decomp_68,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 321 |
+
decomp_69,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 322 |
+
decomp_70,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 323 |
+
decomp_71,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 324 |
+
decomp_72,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 325 |
+
decomp_73,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 326 |
+
decomp_74,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 327 |
+
arthro_0,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 328 |
+
arthro_1,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 329 |
+
arthro_2,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 330 |
+
arthro_3,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 331 |
+
arthro_4,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 332 |
+
arthro_5,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 333 |
+
arthro_6,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 334 |
+
arthro_7,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 335 |
+
arthro_8,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 336 |
+
arthro_9,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 337 |
+
arthro_10,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 338 |
+
arthro_11,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 339 |
+
arthro_12,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 340 |
+
arthro_13,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 341 |
+
arthro_14,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 342 |
+
arthro_15,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 343 |
+
arthro_16,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 344 |
+
arthro_17,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 345 |
+
arthro_18,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 346 |
+
arthro_19,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 347 |
+
instr_0,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 348 |
+
instr_1,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 349 |
+
instr_2,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 350 |
+
instr_3,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 351 |
+
instr_4,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 352 |
+
instr_5,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 353 |
+
instr_6,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 354 |
+
instr_7,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 355 |
+
instr_8,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 356 |
+
instr_9,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 357 |
+
instr_10,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 358 |
+
instr_11,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 359 |
+
instr_12,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 360 |
+
instr_13,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 361 |
+
instr_14,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 362 |
+
instr_15,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 363 |
+
instr_16,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 364 |
+
instr_17,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 365 |
+
instr_18,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 366 |
+
instr_19,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 367 |
+
removal_0,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 368 |
+
removal_1,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 369 |
+
removal_2,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 370 |
+
removal_3,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 371 |
+
removal_4,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 372 |
+
removal_5,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 373 |
+
removal_6,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 374 |
+
removal_7,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 375 |
+
removal_8,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 376 |
+
removal_9,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 377 |
+
removal_10,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 378 |
+
removal_11,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 379 |
+
removal_12,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 380 |
+
removal_13,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 381 |
+
removal_14,Simulated operative note for removal case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 382 |
+
removal_15,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 383 |
+
removal_16,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 384 |
+
removal_17,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 385 |
+
removal_18,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 386 |
+
removal_19,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 387 |
+
coflex_0,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 388 |
+
coflex_1,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 389 |
+
coflex_2,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 390 |
+
coflex_3,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 391 |
+
coflex_4,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 392 |
+
coflex_5,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 393 |
+
coflex_6,Simulated operative note for coflex case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 394 |
+
coflex_7,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 395 |
+
coflex_8,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 396 |
+
coflex_9,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 397 |
+
deformity_0,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 398 |
+
deformity_1,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 399 |
+
deformity_2,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 400 |
+
deformity_3,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 401 |
+
deformity_4,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 402 |
+
deformity_5,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 403 |
+
deformity_6,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 404 |
+
deformity_7,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 405 |
+
deformity_8,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 406 |
+
deformity_9,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 407 |
+
deformity_10,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 408 |
+
deformity_11,Simulated operative note for deformity case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 409 |
+
deformity_12,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 410 |
+
deformity_13,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 411 |
+
deformity_14,Simulated operative note for deformity case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 412 |
+
deformity_15,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 413 |
+
deformity_16,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 414 |
+
deformity_17,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 415 |
+
deformity_18,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 416 |
+
deformity_19,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 417 |
+
tumor_0,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 418 |
+
tumor_1,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 419 |
+
tumor_2,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 420 |
+
tumor_3,Simulated operative note for tumor case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 421 |
+
tumor_4,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 422 |
+
tumor_5,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 423 |
+
tumor_6,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 424 |
+
tumor_7,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 425 |
+
tumor_8,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 426 |
+
tumor_9,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 427 |
+
tumor_10,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 428 |
+
tumor_11,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 429 |
+
tumor_12,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 430 |
+
tumor_13,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 431 |
+
tumor_14,Simulated operative note for tumor case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 432 |
+
percut_0,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 433 |
+
percut_1,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 434 |
+
percut_2,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 435 |
+
percut_3,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 436 |
+
percut_4,Simulated operative note for percut case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 437 |
+
percut_5,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 438 |
+
percut_6,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 439 |
+
percut_7,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 440 |
+
percut_8,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 441 |
+
percut_9,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 442 |
+
percut_10,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 443 |
+
percut_11,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 444 |
+
percut_12,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 445 |
+
percut_13,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 446 |
+
percut_14,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 447 |
+
edge_0,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 448 |
+
edge_1,Simulated operative note for edge case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 449 |
+
edge_2,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 450 |
+
edge_3,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 451 |
+
edge_4,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 452 |
+
edge_5,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 453 |
+
edge_6,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 454 |
+
edge_7,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 455 |
+
edge_8,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 456 |
+
edge_9,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 457 |
+
edge_10,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 458 |
+
edge_11,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 459 |
+
edge_12,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 460 |
+
edge_13,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 461 |
+
edge_14,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 462 |
+
edge_15,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 463 |
+
edge_16,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 464 |
+
edge_17,Simulated operative note for edge case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 465 |
+
edge_18,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 466 |
+
edge_19,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 467 |
+
edge_20,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 468 |
+
edge_21,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 469 |
+
edge_22,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 470 |
+
edge_23,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 471 |
+
edge_24,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 472 |
+
edge_25,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 473 |
+
edge_26,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 474 |
+
edge_27,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 475 |
+
edge_28,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 476 |
+
edge_29,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 477 |
+
edge_30,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 478 |
+
edge_31,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 479 |
+
edge_32,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 480 |
+
edge_33,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 481 |
+
edge_34,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 482 |
+
edge_35,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 483 |
+
edge_36,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 484 |
+
edge_37,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 485 |
+
edge_38,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 486 |
+
edge_39,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 487 |
+
edge_40,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 488 |
+
edge_41,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 489 |
+
edge_42,Simulated operative note for edge case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 490 |
+
edge_43,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 491 |
+
edge_44,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 492 |
+
edge_45,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 493 |
+
edge_46,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 494 |
+
edge_47,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 495 |
+
edge_48,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 496 |
+
edge_49,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 497 |
+
edge_50,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 498 |
+
edge_51,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 499 |
+
edge_52,Simulated operative note for edge case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 500 |
+
edge_53,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 501 |
+
edge_54,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
spine_coder/spine_coder/synthetic_dataset/notes_500.jsonl
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
spine_coder/spine_coder/tests/__pycache__/conftest.cpython-312-pytest-8.4.2.pyc
ADDED
|
Binary file (754 Bytes). View file
|
|
|
spine_coder/spine_coder/tests/__pycache__/test_conflicts.cpython-312-pytest-8.4.2.pyc
ADDED
|
Binary file (2.81 kB). View file
|
|
|
spine_coder/spine_coder/tests/__pycache__/test_coverage_and_modifiers.cpython-312-pytest-8.4.2.pyc
ADDED
|
Binary file (8.37 kB). View file
|
|
|
spine_coder/spine_coder/tests/__pycache__/test_dataset_basic.cpython-312-pytest-8.4.2.pyc
ADDED
|
Binary file (6.13 kB). View file
|
|
|
spine_coder/spine_coder/tests/conftest.py
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os, sys
|
| 2 |
+
ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", ".."))
|
| 3 |
+
if ROOT not in sys.path:
|
| 4 |
+
sys.path.insert(0, ROOT)
|
| 5 |
+
print("✅ conftest.py ready — sys.path patched for pytest imports")
|
spine_coder/spine_coder/tests/test_conflicts.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
DATA_DIR = Path(__file__).resolve().parents[1] / "synthetic_dataset"
|
| 4 |
+
def _rows(): return [json.loads(l) for l in (DATA_DIR / "notes_500.jsonl").read_text().splitlines() if l.strip()]
|
| 5 |
+
def test_no_conflicts():
|
| 6 |
+
for r in _rows():
|
| 7 |
+
labs=[l["cpt"] for l in r["labels"]]
|
| 8 |
+
assert not ("22633" in labs and "22558" in labs), "Cannot mix TLIF and ALIF in same case"
|
| 9 |
+
print("✅ test_conflicts ready")
|
spine_coder/spine_coder/tests/test_coverage_and_modifiers.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
from spine_coder.spine_coder_core import suggest_with_cpt_billing
|
| 4 |
+
|
| 5 |
+
DATA_DIR = Path(__file__).resolve().parents[1] / "synthetic_dataset"
|
| 6 |
+
def _rows(): return [json.loads(l) for l in (DATA_DIR / "notes_500.jsonl").read_text().splitlines() if l.strip()]
|
| 7 |
+
|
| 8 |
+
def test_cpt_presence():
|
| 9 |
+
counts={}
|
| 10 |
+
for r in _rows():
|
| 11 |
+
for l in r["labels"]:
|
| 12 |
+
counts[l["cpt"]] = counts.get(l["cpt"],0)+1
|
| 13 |
+
assert counts.get("22633",0) >= 80
|
| 14 |
+
assert counts.get("22551",0) >= 50
|
| 15 |
+
|
| 16 |
+
def test_modifiers():
|
| 17 |
+
mod_counts={}
|
| 18 |
+
for r in _rows():
|
| 19 |
+
out=suggest_with_cpt_billing(r["note"])
|
| 20 |
+
for m in out.get("case_modifiers",[]):
|
| 21 |
+
mod=m["modifier"]
|
| 22 |
+
mod_counts[mod]=mod_counts.get(mod,0)+1
|
| 23 |
+
assert mod_counts.get("22",0)>=30
|
| 24 |
+
assert mod_counts.get("53",0)>=20
|
| 25 |
+
assert mod_counts.get("50",0)>=60
|
| 26 |
+
assert mod_counts.get("62",0)>=20
|
| 27 |
+
assert (mod_counts.get("80",0)+mod_counts.get("82",0))>=30
|
| 28 |
+
print("✅ test_coverage_and_modifiers ready")
|
spine_coder/spine_coder/tests/test_dataset_basic.py
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
import pandas as pd
|
| 4 |
+
|
| 5 |
+
DATA_DIR = Path(__file__).resolve().parents[1] / "synthetic_dataset"
|
| 6 |
+
|
| 7 |
+
def test_files_exist():
|
| 8 |
+
assert (DATA_DIR / "notes_500.jsonl").exists()
|
| 9 |
+
assert (DATA_DIR / "notes_500.csv").exists()
|
| 10 |
+
|
| 11 |
+
def test_counts_and_fields():
|
| 12 |
+
rows = [json.loads(l) for l in (DATA_DIR / "notes_500.jsonl").read_text().splitlines() if l.strip()]
|
| 13 |
+
assert len(rows) == 500
|
| 14 |
+
required = {"id","note","region","approach","intent","levels","laterality","flags","labels"}
|
| 15 |
+
for r in rows:
|
| 16 |
+
assert required.issubset(r.keys())
|
| 17 |
+
|
| 18 |
+
df = pd.read_csv(DATA_DIR / "notes_500.csv")
|
| 19 |
+
assert len(df) == 500
|
| 20 |
+
for col in ["id","note","region","approach","intent","laterality","labels"]:
|
| 21 |
+
assert col in df.columns
|
| 22 |
+
|
| 23 |
+
print("✅ test_dataset_basic ready")
|
spine_coder/spine_coder_core.py
ADDED
|
@@ -0,0 +1,399 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
import re, json
|
| 3 |
+
from typing import Dict, Any, List, Tuple
|
| 4 |
+
|
| 5 |
+
# ---------- helpers ----------
|
| 6 |
+
def _norm(s: str) -> str:
|
| 7 |
+
if not s: return ""
|
| 8 |
+
s = s.replace("\u2013","-").replace("\u2014","-").replace("—","-").replace("–","-").replace("\u00A0"," ")
|
| 9 |
+
s = re.sub(r"\s+", " ", s.strip().lower())
|
| 10 |
+
return s
|
| 11 |
+
|
| 12 |
+
def _has(text: str, pat: str) -> bool:
|
| 13 |
+
return re.search(pat, text, flags=re.I) is not None
|
| 14 |
+
|
| 15 |
+
def _level_sort_key(lv: str) -> Tuple[int, int]:
|
| 16 |
+
band = {"C":100, "T":200, "L":300, "S":400}.get(lv[0], 999)
|
| 17 |
+
num = int(re.sub(r"\D", "", lv) or 0)
|
| 18 |
+
return (band, num)
|
| 19 |
+
|
| 20 |
+
def _extract_levels(t: str) -> List[str]:
|
| 21 |
+
levels = set()
|
| 22 |
+
for m in re.finditer(r"\b([CTLS])\s?(\d{1,2})\s*[-–]\s*([CTLS])?\s?(\d{1,2})\b", t, flags=re.I):
|
| 23 |
+
pfx1, n1, pfx2, n2 = m.group(1).upper(), int(m.group(2)), (m.group(3) or m.group(1)).upper(), int(m.group(4))
|
| 24 |
+
if pfx1 != pfx2:
|
| 25 |
+
levels.add(f"{pfx1}{n1}"); levels.add(f"{pfx2}{n2}")
|
| 26 |
+
else:
|
| 27 |
+
lo, hi = sorted([n1, n2])
|
| 28 |
+
for k in range(lo, hi+1): levels.add(f"{pfx1}{k}")
|
| 29 |
+
for m in re.finditer(r"\b([CTLS])\s?(\d{1,2})\b", t, flags=re.I):
|
| 30 |
+
levels.add(f"{m.group(1).upper()}{int(m.group(2))}")
|
| 31 |
+
return sorted(levels, key=_level_sort_key)
|
| 32 |
+
|
| 33 |
+
def _count_interspaces(levels: List[str]) -> int:
|
| 34 |
+
if not levels: return 0
|
| 35 |
+
by_band: Dict[str, List[int]] = {}
|
| 36 |
+
for lv in levels:
|
| 37 |
+
by_band.setdefault(lv[0], []).append(int(re.sub(r"\D", "", lv)))
|
| 38 |
+
for b in list(by_band): by_band[b] = sorted(set(by_band[b]))
|
| 39 |
+
inters = 0
|
| 40 |
+
for arr in by_band.values():
|
| 41 |
+
if len(arr) >= 2:
|
| 42 |
+
inters += sum(1 for i in range(1, len(arr)) if arr[i]-arr[i-1]==1)
|
| 43 |
+
if "L5" in levels and "S1" in levels: inters += 1
|
| 44 |
+
if inters == 0:
|
| 45 |
+
for arr in by_band.values():
|
| 46 |
+
if len(arr) >= 2: inters = 1; break
|
| 47 |
+
return inters
|
| 48 |
+
|
| 49 |
+
def _span_segments(levels: List[str]) -> int:
|
| 50 |
+
if not levels: return 0
|
| 51 |
+
by_band: Dict[str, List[int]] = {}
|
| 52 |
+
for lv in levels:
|
| 53 |
+
by_band.setdefault(lv[0], []).append(int(re.sub(r"\D", "", lv)))
|
| 54 |
+
spans = []
|
| 55 |
+
for arr in by_band.values():
|
| 56 |
+
arr = sorted(set(arr))
|
| 57 |
+
spans.append(arr[-1]-arr[0]+1 if len(arr)>=2 else 1)
|
| 58 |
+
return (max(spans) if spans else 0) if len(spans)==1 else max(spans + [2])
|
| 59 |
+
|
| 60 |
+
def _laterality_mods(t: str) -> List[str]:
|
| 61 |
+
mods: List[str] = []
|
| 62 |
+
if _has(t, r"\bleft\b|left-sided|left side|leftward|hemilam\w* left|foraminotomy left|\blt\b"):
|
| 63 |
+
mods.append("LT")
|
| 64 |
+
# tighten RIGHT: drop bare \brt\b to avoid accidental hits
|
| 65 |
+
if _has(t, r"\bright\b|right-sided|right side|rightward|hemilam\w* right|foraminotomy right"):
|
| 66 |
+
mods.append("RT")
|
| 67 |
+
return list(sorted(set(mods)))
|
| 68 |
+
|
| 69 |
+
def _add(suggestions: List[Dict[str, Any]], cpt: str, desc: str, rationale: str,
|
| 70 |
+
category: str, primary: bool, confidence: float = 0.8, units: int = 1,
|
| 71 |
+
mods: List[str] = None, score: float = None):
|
| 72 |
+
suggestions.append({
|
| 73 |
+
"cpt": cpt, "desc": desc, "rationale": rationale, "category": category,
|
| 74 |
+
"primary": primary, "confidence": confidence, "units": units,
|
| 75 |
+
"modifiers": mods or [], "score": score if score is not None else confidence
|
| 76 |
+
})
|
| 77 |
+
|
| 78 |
+
def _inst_code_by_span(span_segments: int, anterior: bool) -> str:
|
| 79 |
+
if span_segments <= 1: return ""
|
| 80 |
+
if anterior:
|
| 81 |
+
return "22845" if span_segments <= 3 else ("22846" if span_segments <= 7 else "22847")
|
| 82 |
+
else:
|
| 83 |
+
return "22842" if span_segments <= 3 else ("22843" if span_segments <= 7 else "22844")
|
| 84 |
+
|
| 85 |
+
# ---------- main ----------
|
| 86 |
+
def suggest_with_cpt_billing(note: str, payer: str = "Medicare", top_k: int = 10) -> Dict[str, Any]:
|
| 87 |
+
t = _norm(note)
|
| 88 |
+
suggestions: List[Dict[str, Any]] = []
|
| 89 |
+
case_modifiers: List[Dict[str, str]] = []
|
| 90 |
+
|
| 91 |
+
levels = _extract_levels(t)
|
| 92 |
+
inters = _count_interspaces(levels)
|
| 93 |
+
span = _span_segments(levels)
|
| 94 |
+
lat_mods = _laterality_mods(t)
|
| 95 |
+
|
| 96 |
+
# ---------- Region ----------
|
| 97 |
+
region = "unknown"
|
| 98 |
+
if any(l.startswith("C") for l in levels) or _has(t, r"\bcervic"): region = "cervical"
|
| 99 |
+
elif any(l.startswith("T") for l in levels) or _has(t, r"\bthorac"): region = "thoracic"
|
| 100 |
+
elif any(l.startswith(("L","S")) for l in levels) or _has(t, r"\blumbar|sacrum"): region = "lumbar"
|
| 101 |
+
|
| 102 |
+
# Helper flags
|
| 103 |
+
mentions_plate_ant = _has(t, r"\b(anterior (plate|instrument(ation)?)|plate fixed|plating)\b") or _has(t, r"\bplate\b")
|
| 104 |
+
mentions_pedicle = _has(t, r"\bpedicle screw|pedicle-screw|pedicle fixation|s2ai\b")
|
| 105 |
+
mentions_rod = _has(t, r"\brod(s)?\b")
|
| 106 |
+
mentions_inst_post = mentions_pedicle or mentions_rod or _has(t, r"\binstrument(ation)?\b")
|
| 107 |
+
|
| 108 |
+
did_corpectomy = False
|
| 109 |
+
no_decompression_due_to_revision = False
|
| 110 |
+
avoid_decompression_for_stimulator = False
|
| 111 |
+
|
| 112 |
+
# ---------- (1) Hardware removal (support both word orders) ----------
|
| 113 |
+
rem_pat_either = (
|
| 114 |
+
r"(?:\b(hardware|instrumentation|implant|plate|rod|screw)\b.{0,40}\b(remov\w+|explant\w+|taken out))"
|
| 115 |
+
r"|(?:\bremov\w+\b.{0,40}\b(hardware|instrumentation|implant|plate|rod|screw)\b)"
|
| 116 |
+
)
|
| 117 |
+
if _has(t, rem_pat_either):
|
| 118 |
+
if _has(t, r"\banterior\b|acdf|alif|anterior plate|smith[- ]?robinson"):
|
| 119 |
+
_add(suggestions, "22855", "Removal of anterior instrumentation",
|
| 120 |
+
"Anterior hardware removal documented.", "hardware_removal", True, 0.85, mods=lat_mods)
|
| 121 |
+
elif _has(t, r"non[- ]?segmental|hook|wire") and not _has(t, r"segmental|pedicle"):
|
| 122 |
+
_add(suggestions, "22850", "Removal of posterior non-segmental instrumentation",
|
| 123 |
+
"Posterior non-segmental removal documented.", "hardware_removal", True, 0.82, mods=lat_mods)
|
| 124 |
+
else:
|
| 125 |
+
_add(suggestions, "22852", "Removal of posterior segmental instrumentation",
|
| 126 |
+
"Posterior segmental hardware removal documented.", "hardware_removal", True, 0.85, mods=lat_mods)
|
| 127 |
+
|
| 128 |
+
# If remove + replace/reinsert/revision language → add 22849 and avoid decompression auto-fires
|
| 129 |
+
if _has(t, r"\b(reinsertion|remove and replace|revision of instrumentation|hardware revision)\b"):
|
| 130 |
+
_add(suggestions, "22849", "Reinsertion/revision of spinal instrumentation",
|
| 131 |
+
"Revision/reinsertion documented.", "revision", True, 0.85)
|
| 132 |
+
no_decompression_due_to_revision = True
|
| 133 |
+
|
| 134 |
+
# ---------- (2) ACDF with guards (history/removal) ----------
|
| 135 |
+
found_removal = _has(t, rem_pat_either)
|
| 136 |
+
acdf_history = _has(t, r"\b(prior|previous|history of|s/?p)\s*acdf\b")
|
| 137 |
+
acdf_current = _has(t, r"\banterior cervical discectomy|anterior cervical fusion|smith[- ]?robinson\b")
|
| 138 |
+
if (acdf_current or (_has(t, r"\bacdf\b") and not acdf_history)) and not (found_removal and not acdf_current):
|
| 139 |
+
n = max(1, inters or 1)
|
| 140 |
+
_add(suggestions, "22551", "ACDF, first interspace (includes discectomy)",
|
| 141 |
+
"Anterior cervical fusion pattern detected.", "ACDF", True, 0.95, mods=lat_mods)
|
| 142 |
+
if n > 1:
|
| 143 |
+
_add(suggestions, "22552", f"ACDF, each additional interspace ×{n-1}",
|
| 144 |
+
"Multi-level ACDF.", "ACDF add-on", False, 0.9, units=(n-1), mods=lat_mods)
|
| 145 |
+
if mentions_plate_ant:
|
| 146 |
+
code = _inst_code_by_span(span or (n+1), anterior=True)
|
| 147 |
+
if code:
|
| 148 |
+
desc = {"22845":"Anterior instrumentation (2–3 segments)",
|
| 149 |
+
"22846":"Anterior instrumentation (4–7 segments)",
|
| 150 |
+
"22847":"Anterior instrumentation (8+ segments)"}[code]
|
| 151 |
+
_add(suggestions, code, desc, "Anterior plate present; span estimated from levels.", "instrumentation", False, 0.8)
|
| 152 |
+
|
| 153 |
+
# ---------- (3) TLIF / PLIF (beats posterior fusion) ----------
|
| 154 |
+
if _has(t, r"\btlif\b|\bplif\b|posterior interbody fusion"):
|
| 155 |
+
n = max(1, inters or 1)
|
| 156 |
+
_add(suggestions, "22633", "Posterior/posterolateral + posterior interbody, single level",
|
| 157 |
+
"TLIF/PLIF pattern: posterior approach + cage + screws.", "TLIF/PLIF", True, 0.92, mods=lat_mods)
|
| 158 |
+
if n > 1:
|
| 159 |
+
_add(suggestions, "22634", f"Posterior interbody each additional interspace ×{n-1}",
|
| 160 |
+
"Multi-level TLIF/PLIF.", "TLIF/PLIF add-on", False, 0.88, units=(n-1), mods=lat_mods)
|
| 161 |
+
if mentions_inst_post:
|
| 162 |
+
code = _inst_code_by_span(span or (n+1), anterior=False)
|
| 163 |
+
if code:
|
| 164 |
+
desc = {"22842":"Posterior segmental instrumentation (2–3 segments)",
|
| 165 |
+
"22843":"Posterior segmental instrumentation (4–7 segments)",
|
| 166 |
+
"22844":"Posterior segmental instrumentation (8+ segments)"}[code]
|
| 167 |
+
_add(suggestions, code, desc, "Posterior instrumentation detected.", "instrumentation", False, 0.82)
|
| 168 |
+
|
| 169 |
+
# ---------- (4) ALIF ----------
|
| 170 |
+
if _has(t, r"\balif\b|anterior lumbar interbody fusion"):
|
| 171 |
+
n = max(1, inters or 1)
|
| 172 |
+
_add(suggestions, "22558", "Anterior lumbar interbody fusion, single interspace",
|
| 173 |
+
"ALIF detected.", "ALIF", True, 0.9)
|
| 174 |
+
if n > 1:
|
| 175 |
+
_add(suggestions, "22585", f"ALIF each additional interspace ×{n-1}",
|
| 176 |
+
"Multi-level ALIF.", "ALIF add-on", False, 0.86, units=(n-1))
|
| 177 |
+
if mentions_plate_ant:
|
| 178 |
+
code = _inst_code_by_span(span or (n+1), anterior=True)
|
| 179 |
+
if code:
|
| 180 |
+
desc = {"22845":"Anterior instrumentation (2–3 segments)",
|
| 181 |
+
"22846":"Anterior instrumentation (4–7 segments)",
|
| 182 |
+
"22847":"Anterior instrumentation (8+ segments)"}[code]
|
| 183 |
+
_add(suggestions, code, desc, "Anterior plate present; span estimated from levels.", "instrumentation", False, 0.8)
|
| 184 |
+
|
| 185 |
+
# ---------- (5) Posterolateral/posterior fusion WITHOUT interbody ----------
|
| 186 |
+
if (_has(t, r"posterolateral\b.*\bfusion|post[- ]?lat\b.*\bfusion|posterior\b.*\bfusion|in situ\b.*\bfusion")
|
| 187 |
+
and not _has(t, r"\btlif\b|\bplif\b|posterior interbody")):
|
| 188 |
+
base_map = {"cervical":"22600", "thoracic":"22610", "lumbar":"22612"}
|
| 189 |
+
base = base_map.get(region, "22612")
|
| 190 |
+
_add(suggestions, base, f"Posterolateral/posterior fusion, first level ({region})",
|
| 191 |
+
"Posterior fusion without interbody.", "posterior_fusion", True, 0.78, mods=lat_mods)
|
| 192 |
+
add_units = max(0, inters)
|
| 193 |
+
if add_units:
|
| 194 |
+
_add(suggestions, "22614", f"Posterior fusion each additional segment ×{add_units}",
|
| 195 |
+
"Multi-level posterior fusion.", "posterior_fusion add-on", False, 0.72, units=add_units, mods=lat_mods)
|
| 196 |
+
if mentions_inst_post:
|
| 197 |
+
n_seg = span or max(2, (inters + 1))
|
| 198 |
+
code = _inst_code_by_span(n_seg, anterior=False)
|
| 199 |
+
if code:
|
| 200 |
+
desc = {"22842":"Posterior segmental instrumentation (2–3 segments)",
|
| 201 |
+
"22843":"Posterior segmental instrumentation (4–7 segments)",
|
| 202 |
+
"22844":"Posterior segmental instrumentation (8+ segments)"}[code]
|
| 203 |
+
_add(suggestions, code, desc, "Posterior instrumentation detected.", "instrumentation", False, 0.8)
|
| 204 |
+
|
| 205 |
+
# ---------- (6) Neurostimulator paddle + IPG ----------
|
| 206 |
+
if _has(t, r"\bstimulator\b|paddle lead|spinal cord stimulator|scs") and _has(t, r"\blaminectomy\b|laminotomy"):
|
| 207 |
+
_add(suggestions, "63655", "Laminectomy for implantation of neurostimulator paddle electrodes",
|
| 208 |
+
"Paddle lead placed via laminectomy.", "neurostimulator", True, 0.86)
|
| 209 |
+
if _has(t, r"\bpulse generator\b|ipg|implantable pulse generator|battery\b"):
|
| 210 |
+
_add(suggestions, "63685", "Insertion or replacement of IPG",
|
| 211 |
+
"Pulse generator implanted.", "neurostimulator", False, 0.84)
|
| 212 |
+
avoid_decompression_for_stimulator = True
|
| 213 |
+
|
| 214 |
+
# ---------- (7) Decompression (guarded: no history/corpectomy/revision/stimulator) ----------
|
| 215 |
+
if (not no_decompression_due_to_revision) and (not avoid_decompression_for_stimulator):
|
| 216 |
+
if _has(t, r"\bdecompression(s)?\b|laminectom(y|ies)|laminotom(y|ies)|foraminotom(y|ies)|foraminal decompression(s)?|neuroforamen|lateral recess|central stenosis") \
|
| 217 |
+
and not _has(t, r"\b(prior|previous|history of|s/?p)\s+(decompression|laminectomy|laminotomy|foraminotomy)\b"):
|
| 218 |
+
base_map = {"cervical":"63045", "thoracic":"63046", "lumbar":"63047"}
|
| 219 |
+
base = base_map.get(region, "63047")
|
| 220 |
+
_add(suggestions, base, "Decompression, first level", "Decompression terms detected.", "decompression", True, 0.82, mods=lat_mods)
|
| 221 |
+
if _has(t, r"additional level|two levels|three levels|multi|levels|l\d-?l\d|c\d-?c\d|t\d-?t\d"):
|
| 222 |
+
extra = max(1, inters)
|
| 223 |
+
_add(suggestions, "63048", f"Decompression, each additional level ×{extra}",
|
| 224 |
+
"Multi-level decompression inferred.", "decompression add-on", False, 0.78, units=extra, mods=lat_mods)
|
| 225 |
+
|
| 226 |
+
# ---------- (8) Interspinous/interlaminar device ----------
|
| 227 |
+
if _has(t, r"\bcoflex\b|interspinous|interlaminar device|ipd"):
|
| 228 |
+
_add(suggestions, "22868", "Insertion of interspinous/interlaminar device",
|
| 229 |
+
"Coflex/IPD insertion documented.", "interspinous", True, 0.86, mods=lat_mods)
|
| 230 |
+
|
| 231 |
+
# ---------- (9) Cervical disc arthroplasty ----------
|
| 232 |
+
if _has(t, r"cervical (arthroplasty|artificial disc|disc replacement)|\bcda\b") or (
|
| 233 |
+
(region == "cervical") and _has(t, r"\barthroplasty\b|artificial disc|disc replacement")
|
| 234 |
+
):
|
| 235 |
+
n = max(1, inters or 1)
|
| 236 |
+
_add(suggestions, "22856", "Cervical disc arthroplasty, single level",
|
| 237 |
+
"Cervical disc arthroplasty documented.", "arthroplasty", True, 0.87, mods=lat_mods)
|
| 238 |
+
if n > 1:
|
| 239 |
+
_add(suggestions, "22858", f"Cervical disc arthroplasty, each additional level ×{n-1}",
|
| 240 |
+
"Multi-level arthroplasty.", "arthroplasty add-on", False, 0.84, units=(n-1), mods=lat_mods)
|
| 241 |
+
|
| 242 |
+
# ---------- (10) Tumor / corpectomy ----------
|
| 243 |
+
# Cervical corpectomy
|
| 244 |
+
if _has(t, r"\bcorpectomy\b") and (region == "cervical" or _has(t, r"\bcervic")):
|
| 245 |
+
_add(suggestions, "63081", "Cervical corpectomy for decompression, first segment",
|
| 246 |
+
"Cervical corpectomy documented.", "tumor/corpectomy", True, 0.86)
|
| 247 |
+
# rough extra estimate
|
| 248 |
+
if _has(t, r"additional (level|segment)|two levels|three levels|multi|c\d-?c\d"):
|
| 249 |
+
extra = max(1, inters or 1)
|
| 250 |
+
_add(suggestions, "63082", f"Each additional cervical segment ×{extra}",
|
| 251 |
+
"Multi-segment cervical corpectomy.", "tumor/corpectomy add-on", False, 0.82, units=extra)
|
| 252 |
+
did_corpectomy = True
|
| 253 |
+
# Thoracic/Lumbar corpectomy (guard away from cervical)
|
| 254 |
+
if _has(t, r"\btumou?r\b|metastatic|metastasis|en bloc") or (_has(t, r"\bcorpectomy\b") and region in {"thoracic","lumbar"}):
|
| 255 |
+
_add(suggestions, "63085", "Vertebral corpectomy for decompression (thoracic/lumbar), first segment",
|
| 256 |
+
"Tumor/corpectomy documented.", "tumor/corpectomy", True, 0.84)
|
| 257 |
+
if _has(t, r"additional (level|segment)|two levels|three levels|multi|t\d-?t\d|l\d-?l\d"):
|
| 258 |
+
_add(suggestions, "63086", "Each additional segment (thoracic/lumbar) ×1+",
|
| 259 |
+
"Multi-segment corpectomy.", "tumor/corpectomy add-on", False, 0.8)
|
| 260 |
+
did_corpectomy = True
|
| 261 |
+
|
| 262 |
+
# If corpectomy present, suppress decompression rows
|
| 263 |
+
if did_corpectomy:
|
| 264 |
+
suggestions = [r for r in suggestions if r["category"] != "decompression" and r["cpt"] not in {"63045","63046","63047","63048"}]
|
| 265 |
+
|
| 266 |
+
# ---------- (11) Deformity / Smith-Petersen osteotomy ----------
|
| 267 |
+
if _has(t, r"\bspo\b|smith[- ]?petersen|posterior column osteotomy|osteotomy"):
|
| 268 |
+
base_map = {"cervical":"22210", "thoracic":"22214", "lumbar":"22206"}
|
| 269 |
+
base = base_map.get(region, "22206")
|
| 270 |
+
_add(suggestions, base, "Posterior column osteotomy (Smith-Petersen), first level",
|
| 271 |
+
"Deformity correction with SPO documented.", "deformity", True, 0.83)
|
| 272 |
+
if _has(t, r"additional (level|segment)|two levels|three levels|multi"):
|
| 273 |
+
# For simplicity keep base+1 add-on mapping
|
| 274 |
+
_add(suggestions, str(int(base)+1), "Each additional vertebral segment ×1+",
|
| 275 |
+
"Multi-level osteotomy.", "deformity add-on", False, 0.78)
|
| 276 |
+
|
| 277 |
+
# ---------- (12) Kyphoplasty / vertebral augmentation ----------
|
| 278 |
+
if _has(t, r"\bkyphoplasty\b|vertebroplasty|cement (augmentation|injection)"):
|
| 279 |
+
base_map = {"cervical":"22510", "thoracic":"22513", "lumbar":"22514"}
|
| 280 |
+
base = base_map.get(region, "22514")
|
| 281 |
+
_add(suggestions, base, "Percutaneous vertebral augmentation, first level",
|
| 282 |
+
"Vertebral augmentation terms present.", "percutaneous", True, 0.82)
|
| 283 |
+
if _has(t, r"additional (level|segment)|two levels|three levels|multi"):
|
| 284 |
+
_add(suggestions, "22515", "Each additional vertebral body ×1+",
|
| 285 |
+
"Multi-level augmentation.", "percutaneous add-on", False, 0.8)
|
| 286 |
+
|
| 287 |
+
# ---------- (13) Pelvic fixation ----------
|
| 288 |
+
if _has(t, r"\bpelvic fixation\b|iliac bolt|iliac screw|s2ai"):
|
| 289 |
+
_add(suggestions, "22848", "Pelvic fixation (attach instrumentation to pelvis)",
|
| 290 |
+
"Iliac/pelvic fixation documented.", "pelvic_fixation", False, 0.84)
|
| 291 |
+
|
| 292 |
+
# ---------- (14) Bone grafts (prefer structural 20931 over 20930) ----------
|
| 293 |
+
structural_like = _has(t, r"\b(structural allograft|fibular strut|strut graft|allograft spacer(s)?|interbody allograft spacer(s)?)\b")
|
| 294 |
+
any_allograft = _has(t, r"\ballograft\b|dbm|demineralized|osteo.?promotive")
|
| 295 |
+
|
| 296 |
+
if _has(t, r"\bautograft\b|iliac crest harvest|icbg"):
|
| 297 |
+
_add(suggestions, "20937", "Autograft (separate incision)",
|
| 298 |
+
"Autograft harvest documented.", "bone_graft", False, 0.8)
|
| 299 |
+
|
| 300 |
+
if structural_like:
|
| 301 |
+
_add(suggestions, "20931", "Structural allograft",
|
| 302 |
+
"Structural allograft documented.", "bone_graft", False, 0.8)
|
| 303 |
+
elif any_allograft:
|
| 304 |
+
_add(suggestions, "20930", "Allograft, morselized / osteopromotive material",
|
| 305 |
+
"Allograft/DBM documented.", "bone_graft", False, 0.8)
|
| 306 |
+
|
| 307 |
+
if _has(t, r"\bbmp\b|biologic|recombinant growth factor|rhbmp"):
|
| 308 |
+
_add(suggestions, "20939", "Osteopromotive biologic (e.g., BMP)",
|
| 309 |
+
"BMP/biologic documented.", "bone_graft", False, 0.8)
|
| 310 |
+
|
| 311 |
+
# ---------- Case Modifiers ----------
|
| 312 |
+
mod_map = {
|
| 313 |
+
"22": r"\b(complex|difficult|prolonged|adhesiolysis|severe deformity|morbid obesity)\b",
|
| 314 |
+
"50": r"\b(both sides|bilaterally|bilateral(?!\s*(pedicle|screw|screws|rod|rods|instrumentation)))\b",
|
| 315 |
+
"52": r"\bpartial|limited|reduced service\b",
|
| 316 |
+
"53": r"\baborted|terminated|discontinued\b",
|
| 317 |
+
"59": r"\bseparate (site|incision)|distinct|different level\b",
|
| 318 |
+
"62": r"\bco[- ]?surgeon|two surgeons|co-surgeons\b",
|
| 319 |
+
"78": r"\breturn to or\b|\bunplanned return\b",
|
| 320 |
+
"79": r"\bunrelated procedure\b",
|
| 321 |
+
"80": r"\bassistant surgeon|assistant present\b",
|
| 322 |
+
"82": r"\bresident not available\b"
|
| 323 |
+
}
|
| 324 |
+
reasons = {
|
| 325 |
+
"22": "Increased procedural service (complexity).",
|
| 326 |
+
"50": "Bilateral procedure documented.",
|
| 327 |
+
"52": "Reduced service (limited portion performed).",
|
| 328 |
+
"53": "Procedure discontinued for safety.",
|
| 329 |
+
"59": "Distinct procedural service (separate site/level).",
|
| 330 |
+
"62": "Two surgeons (co-surgeons) documented.",
|
| 331 |
+
"78": "Unplanned return to OR during global period.",
|
| 332 |
+
"79": "Unrelated procedure during postoperative period.",
|
| 333 |
+
"80": "Assistant surgeon documented.",
|
| 334 |
+
"82": "Assistant surgeon; resident not available."
|
| 335 |
+
}
|
| 336 |
+
for k, pat in mod_map.items():
|
| 337 |
+
if _has(t, pat): case_modifiers.append({"modifier": k, "reason": reasons[k]})
|
| 338 |
+
|
| 339 |
+
# EXPLICIT_BILATERAL_DECOMP: If 'bilateral' appears near decompression nouns, force 50 if not already set
|
| 340 |
+
if not any(m["modifier"]=="50" for m in case_modifiers):
|
| 341 |
+
if _has(t, r"\bbilateral\b") and _has(t, r"(foraminotom(y|ies)|facetectom(y|ies)|laminectom(y|ies)|laminotom(y|ies))"):
|
| 342 |
+
case_modifiers.append({"modifier":"50","reason": reasons["50"]})
|
| 343 |
+
|
| 344 |
+
# --- Modifier sanity rules ---
|
| 345 |
+
if any(m["modifier"]=="82" for m in case_modifiers):
|
| 346 |
+
case_modifiers = [m for m in case_modifiers if m["modifier"]!="80"]
|
| 347 |
+
if any(m["modifier"]=="53" for m in case_modifiers):
|
| 348 |
+
case_modifiers = [m for m in case_modifiers if m["modifier"]!="52"]
|
| 349 |
+
|
| 350 |
+
# Laterality: suppress row LT/RT if case has 50
|
| 351 |
+
lat_row_mods = [] if any(m["modifier"] == "50" for m in case_modifiers) else lat_mods
|
| 352 |
+
for row in suggestions:
|
| 353 |
+
if row["category"] in {"decompression","decompression add-on","TLIF/PLIF","posterior_fusion","posterior_fusion add-on"}:
|
| 354 |
+
if lat_row_mods and not row["modifiers"]:
|
| 355 |
+
row["modifiers"] = lat_row_mods
|
| 356 |
+
if any(m["modifier"] == "50" for m in case_modifiers):
|
| 357 |
+
for row in suggestions:
|
| 358 |
+
if row.get("modifiers"):
|
| 359 |
+
row["modifiers"] = [m for m in row["modifiers"] if m not in ("LT","RT")]
|
| 360 |
+
|
| 361 |
+
# ---------- Default guard ----------
|
| 362 |
+
if not suggestions:
|
| 363 |
+
suggestions = [{
|
| 364 |
+
"cpt": "00000",
|
| 365 |
+
"desc": "No recognizable spine CPT pattern found",
|
| 366 |
+
"rationale": "No fusion/decompression pattern detected.",
|
| 367 |
+
"confidence": 0.0, "category": "none", "primary": True, "modifiers": [], "units": 1, "score": 0.0
|
| 368 |
+
}]
|
| 369 |
+
|
| 370 |
+
# ---------- De-dup + order ----------
|
| 371 |
+
merged: Dict[Tuple[str, str, str, str], Dict[str, Any]] = {}
|
| 372 |
+
for r in suggestions:
|
| 373 |
+
key = (r["cpt"], r["desc"], r["category"], "|".join(sorted(r.get("modifiers", []))))
|
| 374 |
+
if key not in merged:
|
| 375 |
+
merged[key] = r.copy()
|
| 376 |
+
else:
|
| 377 |
+
merged[key]["units"] = merged[key].get("units", 1) + r.get("units", 1)
|
| 378 |
+
merged[key]["confidence"] = max(merged[key]["confidence"], r.get("confidence", 0.0))
|
| 379 |
+
merged[key]["score"] = max(merged[key]["score"], r.get("score", 0.0))
|
| 380 |
+
merged[key]["primary"] = merged[key]["primary"] or r.get("primary", False)
|
| 381 |
+
|
| 382 |
+
out = list(merged.values())
|
| 383 |
+
|
| 384 |
+
def _cpt_num(x: Dict[str, Any]) -> int:
|
| 385 |
+
try: return int(re.sub(r"\D","", x.get("cpt","0")) or 0)
|
| 386 |
+
except: return 0
|
| 387 |
+
|
| 388 |
+
out.sort(key=lambda r: (not r.get("primary", False), -(r.get("score", r.get("confidence",0.0))), _cpt_num(r)))
|
| 389 |
+
if isinstance(top_k, int) and top_k > 0: out = out[:top_k]
|
| 390 |
+
|
| 391 |
+
return {
|
| 392 |
+
"payer": payer,
|
| 393 |
+
"region": region,
|
| 394 |
+
"levels": levels,
|
| 395 |
+
"interspaces_est": inters,
|
| 396 |
+
"span_segments_est": span,
|
| 397 |
+
"suggestions": out,
|
| 398 |
+
"case_modifiers": case_modifiers
|
| 399 |
+
}
|
spine_coder/synthetic_dataset/generate_synthetic.py
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json, random
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
|
| 4 |
+
DATA_DIR = Path(__file__).resolve().parent
|
| 5 |
+
|
| 6 |
+
def main():
|
| 7 |
+
random.seed(42)
|
| 8 |
+
buckets = {
|
| 9 |
+
"tlif":90,"acdf":70,"alif":45,"postlat":45,"decomp":75,
|
| 10 |
+
"arthro":20,"instr":20,"removal":20,"coflex":10,"deformity":20,
|
| 11 |
+
"tumor":15,"percut":15,"edge":55
|
| 12 |
+
}
|
| 13 |
+
all_rows=[]
|
| 14 |
+
for bucket,n in buckets.items():
|
| 15 |
+
for i in range(n):
|
| 16 |
+
note=f"Simulated operative note for {bucket} case."
|
| 17 |
+
# 8 % of notes with co-surgeons
|
| 18 |
+
if random.random()<0.08:
|
| 19 |
+
note+=" Co-surgeons performed the procedure; two surgeons documented."
|
| 20 |
+
all_rows.append({
|
| 21 |
+
"id":f"{bucket}_{i}",
|
| 22 |
+
"note":note,
|
| 23 |
+
"region":"lumbar" if "l" in bucket else "cervical",
|
| 24 |
+
"approach":"posterior" if "post" in bucket or "tlif" in bucket else "anterior",
|
| 25 |
+
"intent":"fusion" if "f" in bucket else "decompression",
|
| 26 |
+
"levels":["L4","L5"],
|
| 27 |
+
"laterality":random.choice(["left","right","bilateral"]),
|
| 28 |
+
"flags":{},
|
| 29 |
+
"labels":[{"cpt":"22633" if "tlif" in bucket else "22551","desc":"demo"}]
|
| 30 |
+
})
|
| 31 |
+
jsonl=DATA_DIR/"notes_500.jsonl"
|
| 32 |
+
jsonl.write_text("\n".join(json.dumps(r) for r in all_rows))
|
| 33 |
+
csv=DATA_DIR/"notes_500.csv"
|
| 34 |
+
import pandas as pd
|
| 35 |
+
pd.DataFrame(all_rows).to_csv(csv,index=False)
|
| 36 |
+
print("✅ Wrote 500 synthetic cases to:", jsonl)
|
| 37 |
+
|
| 38 |
+
if __name__=="__main__":
|
| 39 |
+
main()
|
| 40 |
+
|
| 41 |
+
# === PATCH: complexity (modifier-22) seeding ===
|
| 42 |
+
def inject_complexity_phrase(note_dict):
|
| 43 |
+
import random
|
| 44 |
+
if random.random() < 0.10:
|
| 45 |
+
note_dict["note"] += " This was a complex, prolonged operative procedure due to severe deformity and scarring."
|
| 46 |
+
return note_dict
|
| 47 |
+
|
| 48 |
+
# Wrap main() write to include complexity seeding
|
| 49 |
+
_old_main = main
|
| 50 |
+
def main():
|
| 51 |
+
out = _old_main()
|
| 52 |
+
import json
|
| 53 |
+
data_file = Path(DATA_DIR) / "notes_500.jsonl"
|
| 54 |
+
lines = [json.loads(l) for l in data_file.read_text().splitlines() if l.strip()]
|
| 55 |
+
lines = [inject_complexity_phrase(l) for l in lines]
|
| 56 |
+
data_file.write_text("\n".join(json.dumps(x) for x in lines))
|
| 57 |
+
print("✅ Complexity phrases injected into ~10% of dataset")
|
| 58 |
+
return out
|
spine_coder/synthetic_dataset/notes_500.csv
ADDED
|
@@ -0,0 +1,501 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
id,note,region,approach,intent,levels,laterality,flags,labels
|
| 2 |
+
tlif_0,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 3 |
+
tlif_1,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 4 |
+
tlif_2,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 5 |
+
tlif_3,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 6 |
+
tlif_4,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 7 |
+
tlif_5,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 8 |
+
tlif_6,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 9 |
+
tlif_7,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 10 |
+
tlif_8,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 11 |
+
tlif_9,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 12 |
+
tlif_10,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 13 |
+
tlif_11,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 14 |
+
tlif_12,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 15 |
+
tlif_13,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 16 |
+
tlif_14,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 17 |
+
tlif_15,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 18 |
+
tlif_16,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 19 |
+
tlif_17,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 20 |
+
tlif_18,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 21 |
+
tlif_19,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 22 |
+
tlif_20,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 23 |
+
tlif_21,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 24 |
+
tlif_22,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 25 |
+
tlif_23,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 26 |
+
tlif_24,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 27 |
+
tlif_25,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 28 |
+
tlif_26,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 29 |
+
tlif_27,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 30 |
+
tlif_28,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 31 |
+
tlif_29,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 32 |
+
tlif_30,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 33 |
+
tlif_31,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 34 |
+
tlif_32,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 35 |
+
tlif_33,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 36 |
+
tlif_34,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 37 |
+
tlif_35,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 38 |
+
tlif_36,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 39 |
+
tlif_37,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 40 |
+
tlif_38,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 41 |
+
tlif_39,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 42 |
+
tlif_40,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 43 |
+
tlif_41,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 44 |
+
tlif_42,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 45 |
+
tlif_43,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 46 |
+
tlif_44,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 47 |
+
tlif_45,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 48 |
+
tlif_46,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 49 |
+
tlif_47,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 50 |
+
tlif_48,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 51 |
+
tlif_49,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 52 |
+
tlif_50,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 53 |
+
tlif_51,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 54 |
+
tlif_52,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 55 |
+
tlif_53,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 56 |
+
tlif_54,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 57 |
+
tlif_55,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 58 |
+
tlif_56,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 59 |
+
tlif_57,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 60 |
+
tlif_58,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 61 |
+
tlif_59,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 62 |
+
tlif_60,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 63 |
+
tlif_61,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 64 |
+
tlif_62,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 65 |
+
tlif_63,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 66 |
+
tlif_64,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 67 |
+
tlif_65,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 68 |
+
tlif_66,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 69 |
+
tlif_67,Simulated operative note for tlif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 70 |
+
tlif_68,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 71 |
+
tlif_69,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 72 |
+
tlif_70,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 73 |
+
tlif_71,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 74 |
+
tlif_72,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 75 |
+
tlif_73,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 76 |
+
tlif_74,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 77 |
+
tlif_75,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 78 |
+
tlif_76,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 79 |
+
tlif_77,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 80 |
+
tlif_78,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 81 |
+
tlif_79,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 82 |
+
tlif_80,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 83 |
+
tlif_81,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 84 |
+
tlif_82,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 85 |
+
tlif_83,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 86 |
+
tlif_84,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 87 |
+
tlif_85,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 88 |
+
tlif_86,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 89 |
+
tlif_87,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 90 |
+
tlif_88,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 91 |
+
tlif_89,Simulated operative note for tlif case.,lumbar,posterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22633', 'desc': 'demo'}]"
|
| 92 |
+
acdf_0,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 93 |
+
acdf_1,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 94 |
+
acdf_2,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 95 |
+
acdf_3,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 96 |
+
acdf_4,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 97 |
+
acdf_5,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 98 |
+
acdf_6,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 99 |
+
acdf_7,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 100 |
+
acdf_8,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 101 |
+
acdf_9,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 102 |
+
acdf_10,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 103 |
+
acdf_11,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 104 |
+
acdf_12,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 105 |
+
acdf_13,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 106 |
+
acdf_14,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 107 |
+
acdf_15,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 108 |
+
acdf_16,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 109 |
+
acdf_17,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 110 |
+
acdf_18,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 111 |
+
acdf_19,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 112 |
+
acdf_20,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 113 |
+
acdf_21,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 114 |
+
acdf_22,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 115 |
+
acdf_23,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 116 |
+
acdf_24,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 117 |
+
acdf_25,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 118 |
+
acdf_26,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 119 |
+
acdf_27,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 120 |
+
acdf_28,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 121 |
+
acdf_29,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 122 |
+
acdf_30,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 123 |
+
acdf_31,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 124 |
+
acdf_32,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 125 |
+
acdf_33,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 126 |
+
acdf_34,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 127 |
+
acdf_35,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 128 |
+
acdf_36,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 129 |
+
acdf_37,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 130 |
+
acdf_38,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 131 |
+
acdf_39,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 132 |
+
acdf_40,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 133 |
+
acdf_41,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 134 |
+
acdf_42,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 135 |
+
acdf_43,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 136 |
+
acdf_44,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 137 |
+
acdf_45,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 138 |
+
acdf_46,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 139 |
+
acdf_47,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 140 |
+
acdf_48,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 141 |
+
acdf_49,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 142 |
+
acdf_50,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 143 |
+
acdf_51,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 144 |
+
acdf_52,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 145 |
+
acdf_53,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 146 |
+
acdf_54,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 147 |
+
acdf_55,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 148 |
+
acdf_56,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 149 |
+
acdf_57,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 150 |
+
acdf_58,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 151 |
+
acdf_59,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 152 |
+
acdf_60,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 153 |
+
acdf_61,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 154 |
+
acdf_62,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 155 |
+
acdf_63,Simulated operative note for acdf case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 156 |
+
acdf_64,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 157 |
+
acdf_65,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 158 |
+
acdf_66,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 159 |
+
acdf_67,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 160 |
+
acdf_68,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 161 |
+
acdf_69,Simulated operative note for acdf case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 162 |
+
alif_0,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 163 |
+
alif_1,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 164 |
+
alif_2,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 165 |
+
alif_3,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 166 |
+
alif_4,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 167 |
+
alif_5,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 168 |
+
alif_6,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 169 |
+
alif_7,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 170 |
+
alif_8,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 171 |
+
alif_9,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 172 |
+
alif_10,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 173 |
+
alif_11,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 174 |
+
alif_12,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 175 |
+
alif_13,Simulated operative note for alif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 176 |
+
alif_14,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 177 |
+
alif_15,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 178 |
+
alif_16,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 179 |
+
alif_17,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 180 |
+
alif_18,Simulated operative note for alif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 181 |
+
alif_19,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 182 |
+
alif_20,Simulated operative note for alif case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 183 |
+
alif_21,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 184 |
+
alif_22,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 185 |
+
alif_23,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 186 |
+
alif_24,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 187 |
+
alif_25,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 188 |
+
alif_26,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 189 |
+
alif_27,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 190 |
+
alif_28,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 191 |
+
alif_29,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 192 |
+
alif_30,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 193 |
+
alif_31,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 194 |
+
alif_32,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 195 |
+
alif_33,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 196 |
+
alif_34,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 197 |
+
alif_35,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 198 |
+
alif_36,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 199 |
+
alif_37,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 200 |
+
alif_38,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 201 |
+
alif_39,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 202 |
+
alif_40,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 203 |
+
alif_41,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 204 |
+
alif_42,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 205 |
+
alif_43,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 206 |
+
alif_44,Simulated operative note for alif case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 207 |
+
postlat_0,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 208 |
+
postlat_1,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 209 |
+
postlat_2,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 210 |
+
postlat_3,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 211 |
+
postlat_4,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 212 |
+
postlat_5,Simulated operative note for postlat case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 213 |
+
postlat_6,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 214 |
+
postlat_7,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 215 |
+
postlat_8,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 216 |
+
postlat_9,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 217 |
+
postlat_10,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 218 |
+
postlat_11,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 219 |
+
postlat_12,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 220 |
+
postlat_13,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 221 |
+
postlat_14,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 222 |
+
postlat_15,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 223 |
+
postlat_16,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 224 |
+
postlat_17,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 225 |
+
postlat_18,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 226 |
+
postlat_19,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 227 |
+
postlat_20,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 228 |
+
postlat_21,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 229 |
+
postlat_22,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 230 |
+
postlat_23,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 231 |
+
postlat_24,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 232 |
+
postlat_25,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 233 |
+
postlat_26,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 234 |
+
postlat_27,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 235 |
+
postlat_28,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 236 |
+
postlat_29,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 237 |
+
postlat_30,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 238 |
+
postlat_31,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 239 |
+
postlat_32,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 240 |
+
postlat_33,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 241 |
+
postlat_34,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 242 |
+
postlat_35,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 243 |
+
postlat_36,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 244 |
+
postlat_37,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 245 |
+
postlat_38,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 246 |
+
postlat_39,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 247 |
+
postlat_40,Simulated operative note for postlat case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 248 |
+
postlat_41,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 249 |
+
postlat_42,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 250 |
+
postlat_43,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 251 |
+
postlat_44,Simulated operative note for postlat case.,lumbar,posterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 252 |
+
decomp_0,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 253 |
+
decomp_1,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 254 |
+
decomp_2,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 255 |
+
decomp_3,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 256 |
+
decomp_4,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 257 |
+
decomp_5,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 258 |
+
decomp_6,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 259 |
+
decomp_7,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 260 |
+
decomp_8,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 261 |
+
decomp_9,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 262 |
+
decomp_10,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 263 |
+
decomp_11,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 264 |
+
decomp_12,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 265 |
+
decomp_13,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 266 |
+
decomp_14,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 267 |
+
decomp_15,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 268 |
+
decomp_16,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 269 |
+
decomp_17,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 270 |
+
decomp_18,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 271 |
+
decomp_19,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 272 |
+
decomp_20,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 273 |
+
decomp_21,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 274 |
+
decomp_22,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 275 |
+
decomp_23,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 276 |
+
decomp_24,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 277 |
+
decomp_25,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 278 |
+
decomp_26,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 279 |
+
decomp_27,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 280 |
+
decomp_28,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 281 |
+
decomp_29,Simulated operative note for decomp case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 282 |
+
decomp_30,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 283 |
+
decomp_31,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 284 |
+
decomp_32,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 285 |
+
decomp_33,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 286 |
+
decomp_34,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 287 |
+
decomp_35,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 288 |
+
decomp_36,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 289 |
+
decomp_37,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 290 |
+
decomp_38,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 291 |
+
decomp_39,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 292 |
+
decomp_40,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 293 |
+
decomp_41,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 294 |
+
decomp_42,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 295 |
+
decomp_43,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 296 |
+
decomp_44,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 297 |
+
decomp_45,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 298 |
+
decomp_46,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 299 |
+
decomp_47,Simulated operative note for decomp case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 300 |
+
decomp_48,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 301 |
+
decomp_49,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 302 |
+
decomp_50,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 303 |
+
decomp_51,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 304 |
+
decomp_52,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 305 |
+
decomp_53,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 306 |
+
decomp_54,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 307 |
+
decomp_55,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 308 |
+
decomp_56,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 309 |
+
decomp_57,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 310 |
+
decomp_58,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 311 |
+
decomp_59,Simulated operative note for decomp case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 312 |
+
decomp_60,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 313 |
+
decomp_61,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 314 |
+
decomp_62,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 315 |
+
decomp_63,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 316 |
+
decomp_64,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 317 |
+
decomp_65,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 318 |
+
decomp_66,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 319 |
+
decomp_67,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 320 |
+
decomp_68,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 321 |
+
decomp_69,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 322 |
+
decomp_70,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 323 |
+
decomp_71,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 324 |
+
decomp_72,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 325 |
+
decomp_73,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 326 |
+
decomp_74,Simulated operative note for decomp case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 327 |
+
arthro_0,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 328 |
+
arthro_1,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 329 |
+
arthro_2,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 330 |
+
arthro_3,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 331 |
+
arthro_4,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 332 |
+
arthro_5,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 333 |
+
arthro_6,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 334 |
+
arthro_7,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 335 |
+
arthro_8,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 336 |
+
arthro_9,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 337 |
+
arthro_10,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 338 |
+
arthro_11,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 339 |
+
arthro_12,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 340 |
+
arthro_13,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 341 |
+
arthro_14,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 342 |
+
arthro_15,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 343 |
+
arthro_16,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 344 |
+
arthro_17,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 345 |
+
arthro_18,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 346 |
+
arthro_19,Simulated operative note for arthro case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 347 |
+
instr_0,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 348 |
+
instr_1,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 349 |
+
instr_2,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 350 |
+
instr_3,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 351 |
+
instr_4,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 352 |
+
instr_5,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 353 |
+
instr_6,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 354 |
+
instr_7,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 355 |
+
instr_8,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 356 |
+
instr_9,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 357 |
+
instr_10,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 358 |
+
instr_11,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 359 |
+
instr_12,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 360 |
+
instr_13,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 361 |
+
instr_14,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 362 |
+
instr_15,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 363 |
+
instr_16,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 364 |
+
instr_17,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 365 |
+
instr_18,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 366 |
+
instr_19,Simulated operative note for instr case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 367 |
+
removal_0,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 368 |
+
removal_1,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 369 |
+
removal_2,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 370 |
+
removal_3,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 371 |
+
removal_4,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 372 |
+
removal_5,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 373 |
+
removal_6,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 374 |
+
removal_7,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 375 |
+
removal_8,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 376 |
+
removal_9,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 377 |
+
removal_10,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 378 |
+
removal_11,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 379 |
+
removal_12,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 380 |
+
removal_13,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 381 |
+
removal_14,Simulated operative note for removal case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 382 |
+
removal_15,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 383 |
+
removal_16,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 384 |
+
removal_17,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 385 |
+
removal_18,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 386 |
+
removal_19,Simulated operative note for removal case.,lumbar,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 387 |
+
coflex_0,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 388 |
+
coflex_1,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 389 |
+
coflex_2,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 390 |
+
coflex_3,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 391 |
+
coflex_4,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 392 |
+
coflex_5,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 393 |
+
coflex_6,Simulated operative note for coflex case. Co-surgeons performed the procedure; two surgeons documented.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 394 |
+
coflex_7,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 395 |
+
coflex_8,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 396 |
+
coflex_9,Simulated operative note for coflex case.,lumbar,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 397 |
+
deformity_0,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 398 |
+
deformity_1,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 399 |
+
deformity_2,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 400 |
+
deformity_3,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 401 |
+
deformity_4,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 402 |
+
deformity_5,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 403 |
+
deformity_6,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 404 |
+
deformity_7,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 405 |
+
deformity_8,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 406 |
+
deformity_9,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 407 |
+
deformity_10,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 408 |
+
deformity_11,Simulated operative note for deformity case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 409 |
+
deformity_12,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 410 |
+
deformity_13,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 411 |
+
deformity_14,Simulated operative note for deformity case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 412 |
+
deformity_15,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 413 |
+
deformity_16,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 414 |
+
deformity_17,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 415 |
+
deformity_18,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 416 |
+
deformity_19,Simulated operative note for deformity case.,cervical,anterior,fusion,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 417 |
+
tumor_0,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 418 |
+
tumor_1,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 419 |
+
tumor_2,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 420 |
+
tumor_3,Simulated operative note for tumor case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 421 |
+
tumor_4,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 422 |
+
tumor_5,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 423 |
+
tumor_6,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 424 |
+
tumor_7,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 425 |
+
tumor_8,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 426 |
+
tumor_9,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 427 |
+
tumor_10,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 428 |
+
tumor_11,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 429 |
+
tumor_12,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 430 |
+
tumor_13,Simulated operative note for tumor case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 431 |
+
tumor_14,Simulated operative note for tumor case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 432 |
+
percut_0,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 433 |
+
percut_1,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 434 |
+
percut_2,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 435 |
+
percut_3,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 436 |
+
percut_4,Simulated operative note for percut case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 437 |
+
percut_5,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 438 |
+
percut_6,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 439 |
+
percut_7,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 440 |
+
percut_8,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 441 |
+
percut_9,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 442 |
+
percut_10,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 443 |
+
percut_11,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 444 |
+
percut_12,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 445 |
+
percut_13,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 446 |
+
percut_14,Simulated operative note for percut case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 447 |
+
edge_0,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 448 |
+
edge_1,Simulated operative note for edge case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 449 |
+
edge_2,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 450 |
+
edge_3,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 451 |
+
edge_4,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 452 |
+
edge_5,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 453 |
+
edge_6,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 454 |
+
edge_7,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 455 |
+
edge_8,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 456 |
+
edge_9,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 457 |
+
edge_10,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 458 |
+
edge_11,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 459 |
+
edge_12,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 460 |
+
edge_13,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 461 |
+
edge_14,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 462 |
+
edge_15,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 463 |
+
edge_16,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 464 |
+
edge_17,Simulated operative note for edge case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 465 |
+
edge_18,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 466 |
+
edge_19,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 467 |
+
edge_20,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 468 |
+
edge_21,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 469 |
+
edge_22,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 470 |
+
edge_23,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 471 |
+
edge_24,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 472 |
+
edge_25,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 473 |
+
edge_26,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 474 |
+
edge_27,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 475 |
+
edge_28,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 476 |
+
edge_29,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 477 |
+
edge_30,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 478 |
+
edge_31,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 479 |
+
edge_32,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 480 |
+
edge_33,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 481 |
+
edge_34,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 482 |
+
edge_35,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 483 |
+
edge_36,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 484 |
+
edge_37,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 485 |
+
edge_38,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 486 |
+
edge_39,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 487 |
+
edge_40,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 488 |
+
edge_41,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 489 |
+
edge_42,Simulated operative note for edge case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 490 |
+
edge_43,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 491 |
+
edge_44,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 492 |
+
edge_45,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 493 |
+
edge_46,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 494 |
+
edge_47,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 495 |
+
edge_48,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 496 |
+
edge_49,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 497 |
+
edge_50,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 498 |
+
edge_51,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",right,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 499 |
+
edge_52,Simulated operative note for edge case. Co-surgeons performed the procedure; two surgeons documented.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 500 |
+
edge_53,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",bilateral,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
| 501 |
+
edge_54,Simulated operative note for edge case.,cervical,anterior,decompression,"['L4', 'L5']",left,{},"[{'cpt': '22551', 'desc': 'demo'}]"
|
spine_coder/synthetic_dataset/notes_500.jsonl
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
spine_coder/tests/__pycache__/conftest.cpython-312-pytest-8.4.2.pyc
ADDED
|
Binary file (754 Bytes). View file
|
|
|
spine_coder/tests/__pycache__/test_conflicts.cpython-312-pytest-8.4.2.pyc
ADDED
|
Binary file (2.81 kB). View file
|
|
|
spine_coder/tests/__pycache__/test_coverage_and_modifiers.cpython-312-pytest-8.4.2.pyc
ADDED
|
Binary file (8.37 kB). View file
|
|
|
spine_coder/tests/__pycache__/test_dataset_basic.cpython-312-pytest-8.4.2.pyc
ADDED
|
Binary file (6.13 kB). View file
|
|
|
spine_coder/tests/conftest.py
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os, sys
|
| 2 |
+
ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", ".."))
|
| 3 |
+
if ROOT not in sys.path:
|
| 4 |
+
sys.path.insert(0, ROOT)
|
| 5 |
+
print("✅ conftest.py ready — sys.path patched for pytest imports")
|
spine_coder/tests/test_conflicts.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
DATA_DIR = Path(__file__).resolve().parents[1] / "synthetic_dataset"
|
| 4 |
+
def _rows(): return [json.loads(l) for l in (DATA_DIR / "notes_500.jsonl").read_text().splitlines() if l.strip()]
|
| 5 |
+
def test_no_conflicts():
|
| 6 |
+
for r in _rows():
|
| 7 |
+
labs=[l["cpt"] for l in r["labels"]]
|
| 8 |
+
assert not ("22633" in labs and "22558" in labs), "Cannot mix TLIF and ALIF in same case"
|
| 9 |
+
print("✅ test_conflicts ready")
|
spine_coder/tests/test_coverage_and_modifiers.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
from spine_coder.spine_coder_core import suggest_with_cpt_billing
|
| 4 |
+
|
| 5 |
+
DATA_DIR = Path(__file__).resolve().parents[1] / "synthetic_dataset"
|
| 6 |
+
def _rows(): return [json.loads(l) for l in (DATA_DIR / "notes_500.jsonl").read_text().splitlines() if l.strip()]
|
| 7 |
+
|
| 8 |
+
def test_cpt_presence():
|
| 9 |
+
counts={}
|
| 10 |
+
for r in _rows():
|
| 11 |
+
for l in r["labels"]:
|
| 12 |
+
counts[l["cpt"]] = counts.get(l["cpt"],0)+1
|
| 13 |
+
assert counts.get("22633",0) >= 80
|
| 14 |
+
assert counts.get("22551",0) >= 50
|
| 15 |
+
|
| 16 |
+
def test_modifiers():
|
| 17 |
+
mod_counts={}
|
| 18 |
+
for r in _rows():
|
| 19 |
+
out=suggest_with_cpt_billing(r["note"])
|
| 20 |
+
for m in out.get("case_modifiers",[]):
|
| 21 |
+
mod=m["modifier"]
|
| 22 |
+
mod_counts[mod]=mod_counts.get(mod,0)+1
|
| 23 |
+
assert mod_counts.get("22",0)>=30
|
| 24 |
+
assert mod_counts.get("53",0)>=20
|
| 25 |
+
assert mod_counts.get("50",0)>=60
|
| 26 |
+
assert mod_counts.get("62",0)>=20
|
| 27 |
+
assert (mod_counts.get("80",0)+mod_counts.get("82",0))>=30
|
| 28 |
+
print("✅ test_coverage_and_modifiers ready")
|
spine_coder/tests/test_dataset_basic.py
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import json
|
| 2 |
+
from pathlib import Path
|
| 3 |
+
import pandas as pd
|
| 4 |
+
|
| 5 |
+
DATA_DIR = Path(__file__).resolve().parents[1] / "synthetic_dataset"
|
| 6 |
+
|
| 7 |
+
def test_files_exist():
|
| 8 |
+
assert (DATA_DIR / "notes_500.jsonl").exists()
|
| 9 |
+
assert (DATA_DIR / "notes_500.csv").exists()
|
| 10 |
+
|
| 11 |
+
def test_counts_and_fields():
|
| 12 |
+
rows = [json.loads(l) for l in (DATA_DIR / "notes_500.jsonl").read_text().splitlines() if l.strip()]
|
| 13 |
+
assert len(rows) == 500
|
| 14 |
+
required = {"id","note","region","approach","intent","levels","laterality","flags","labels"}
|
| 15 |
+
for r in rows:
|
| 16 |
+
assert required.issubset(r.keys())
|
| 17 |
+
|
| 18 |
+
df = pd.read_csv(DATA_DIR / "notes_500.csv")
|
| 19 |
+
assert len(df) == 500
|
| 20 |
+
for col in ["id","note","region","approach","intent","laterality","labels"]:
|
| 21 |
+
assert col in df.columns
|
| 22 |
+
|
| 23 |
+
print("✅ test_dataset_basic ready")
|