code: func EncodeDict(data map[string]interface{}) string {
  	result, i := make([]string, len(data)), 0
  
  	for key, val := range data {
  		result[i] = strings.Join(
  			[]string{EncodeString(key), encodeItem(val)},
  			"")
  		i++
  	}
  
  	return strings.Join([]string{"d", strings.Join(result, ""), "e"}, "")
  }
docs: // EncodeDict encodes a dict value.