Separate require and optional flags