var testString = '+'.repeat(200) + '='.repeat(20000) + '+'.repeat(200);
var testString2 = '-'.repeat(200) + '='.repeat(20000) + '+'.repeat(200);
var testString3 = 'a'.repeat(200) + 'b'.repeat(200) + 'c'.repeat(200) + 'd'.repeat(200) + 'e'.repeat(200) + 'f'.repeat(200) + 'g'.repeat(200) + 'h'.repeat(200) + 'i'.repeat(200) + 'j'.repeat(200) + 'k'.repeat(200) + 'l'.repeat(200);
var testArray = ['+'];
var testSet = new Set(testArray);
var testArray2 = ['+', '-'];
var testSet2 = new Set(testArray2);
var testArray3 = ['a', 'b', 'c', 'd', 'e'];
var testSet3 = new Set(testArray3);
function trimAnySet(str, chars) {
var start = 0,
end = str.length;
while(start < end && chars.has(str[start]))
++start;
while(end > start && chars.has(str[end - 1]))
--end;
return (start > 0 || end < str.length) ? str.substring(start, end) : str;
}
function trimAny(str, chars) {
var start = 0,
end = str.length;
while(start < end && chars.indexOf(str[start]) >= 0)
++start;
while(end > start && chars.indexOf(str[end - 1]) >= 0)
--end;
return (start > 0 || end < str.length) ? str.substring(start, end) : str;
}