return correct valueType