support more vaguely specified models