querystring.js
function decodeStr(s, decoder) {
  try {
    return decoder(s);
  } catch (e) {
    return QueryString.unescape(s, true);
  }
}
function decodeStr(s, decoder) {
  try {
    return decoder(s);
  } catch (e) {
    return QueryString.unescape(s, true);
  }
}
function decodeStr ( s , decoder ) { try { return decoder ( s ) ; } catch ( e ) { return QueryString . unescape ( s , true ) ; } }
v8 does not optimize functions with try-catch blocks, so we isolate them here to minimize the damage
v8 does not optimize functions with try - catch blocks so we isolate them here to minimize the damage