redesign for conditional patching, introduced default configuration builder