rework the configuration method