code: def dictionary(values):
      
      result = dict()
      for key in values:
          fname = values[key][0]
          if fname not in functions_map:
              result[key] = values[key]
          else:
              params = values[key][1] if len(values[key]) == 2 else {}
              result[key] = functions_map[fname](**params)
      return result
docs: This function generates dictionary
      from values parameter.
      For example this:
      example = {
          'streetway': ('street', {'language': 'en'}),
          'first_name': ('first', {'language': 'en'})
      }
      chance.dictionary(example)
      will output something like this:
      {'streetway': 'Jabhuru Point', 'first_name': 'Eunice'}
  
      :param values: dict
      :return: dict