working now, though needing an excess NOP that should be removed if possible