add allow_extra_fields option