add value_type helper