var FindProxyForURL = function(init, profiles) { return function(url, host) { "use strict"; var result = init, scheme = url.substr(0, url.indexOf(":")); do { result = profiles[result]; if (typeof result === "function") result = result(url, host, scheme); } while (typeof result !== "string" || result.charCodeAt(0) === 43); return result; }; }("+Default", { "+Default": function(url, host, scheme) { "use strict"; if (/^192\.168\.231\./.test(host)) return "+Squid-Cholsey"; if (/^192\.168\.240\./.test(host)) return "+Squid-Torquay"; if (/^192\.168\.245\./.test(host)) return "+Squid-Torquay"; if (/^192\.168\.115\./.test(host)) return "+Squid-Reading"; if (/^192\.168\.4\./.test(host)) return "+Squid-Cholsey"; if (/^192\.168\.6\./.test(host)) return "+Squid-Cholsey"; if (/^192\.168\.100\./.test(host)) return "+Squid-Cholsey"; if (/(?:^|\.)torquay$/.test(host)) return "+Squid-Torquay"; if (/(?:^|\.)reading$/.test(host)) return "+Squid-Reading"; if (/(?:^|\.)home$/.test(host)) return "+Squid-Cholsey"; if (/(?:^|\.)msftconnecttest\.com$/.test(host)) return "DIRECT"; return "DIRECT"; }, "+Squid-Cholsey": function(url, host, scheme) { "use strict"; if (/^127\.0\.0\.1$/.test(host) || /^::1$/.test(host) || /^localhost$/.test(host)) return "DIRECT"; return "PROXY 100.64.22.18:3128"; }, "+Squid-Torquay": function(url, host, scheme) { "use strict"; if (/^127\.0\.0\.1$/.test(host) || /^::1$/.test(host) || /^localhost$/.test(host)) return "DIRECT"; return "PROXY 100.64.22.14:3128"; }, "+Squid-Reading": function(url, host, scheme) { "use strict"; if (/^127\.0\.0\.1$/.test(host) || /^::1$/.test(host) || /^localhost$/.test(host)) return "DIRECT"; return "PROXY 100.64.22.20:3128"; } });