add required and recommended state