code: func GetString(data []byte, keys ...string) (val string, err error) {
  	v, t, _, e := Get(data, keys...)
  
  	if e != nil {
  		return "", e
  	}
  
  	if t != String {
  		return "", fmt.Errorf("Value is not a string: %s", string(v))
  	}
  
  	// If no escapes return raw conten
  	if bytes.IndexByte(v, '\\') == -1 {
  		return string(v), nil
  	}
  
  	return ParseString(v)
  }
docs: // GetString returns the value retrieved by `Get`, cast to a string if possible, trying to properly handle escape and utf8 symbols
  // If key data type do not match, it will return an error.