split out auto_arch
wire up to use auto_arch