abstracting config