added cfg(invalidCls), cfg(required), func(isValid)