conservative part: untangle ambiguous errors
decouple flags