config and generate