support custom config