add directive userValue for checking type