code: function parseString(str, options){
    var ret = reduce(String(str).split(options.separator), function(ret, pair){
      var eql = indexOf(pair, '=')
        , brace = lastBraceInKey(pair)
        , key = pair.substr(0, brace || eql)
        , val = pair.substr(brace || eql, pair.length)
        , val = val.substr(indexOf(val, '=') + 1, val.length);
  
      // ?foo
      if ('' == key) key = pair, val = '';
      if ('' == key) return ret;
  
      return merge(ret, decode(key), decode(val));
    }, { base: {} }).base;
  
    return compact(ret);
  }
docs: Parse the given str.