these ought be specializations but whatever sdfa skeleton for staight up knuth-morris-prattery