add value provider feature