decoupled config