added cfg(value) and func(setValue)