Read from the PDF text layer via page.get_text('words'), filtered to circuit-tag patterns ('A-nn', 'B-(nn,mm)') and cross-referenced by circuit number against the panel schedule read visually off E-601. Trust text tag counts over visual sweeps (tier-1 rule). Symbol/device vector geometry (receptacle body shapes) was NOT separately extracted this run -- marks below represent the circuit homerun/device callout TEXT, not a traced symbol outline.
Names come from: no legend on this sheet, so NECA 100-2006 is what a name rests on. It is the baseline for what a symbol MEANS, never for matching shapes — proportions differ per firm. Confirming a name here is a correction, and corrections are what build the firm's file.
Scale is UNSET. Nothing on this sheet has been measured. The reader declined to infer a scale rather than guess one, so there is no raceway and no branch wire off this sheet — together the largest block of material on a job of this kind. Set it from the title block and measurement becomes available.