code narc and slight restructure