var Spry;if(!Spry)Spry={};if(!Spry.Utils)Spry.Utils={};Spry.Utils.urlComponentToObject=function(ucStr,paramSeparator,nameValueSeparator){var o=new Object;if(ucStr){if(!paramSeparator)paramSeparator="&";if(!nameValueSeparator)nameValueSeparator="=";var params=ucStr.split(paramSeparator);for(var i=0;i < params.length;i++){var a=params[i].split(nameValueSeparator);var n=decodeURIComponent(a[0]?a[0]:"");var v=decodeURIComponent(a[1]?a[1]:"");if(v.match(/^0$|^[1-9]\d*$/))
v=parseInt(v);if(typeof o[n]=="undefined")
o[n]=v;else{if(typeof o[n] !="object"){var t=o[n];o[n]=new Array;o[n].push(t);}
o[n].push(v);}}}
return o;};Spry.Utils.getLocationHashParamsAsObject=function(paramSeparator,nameValueSeparator){return Spry.Utils.urlComponentToObject(window.location.hash.replace(/^#/,""),paramSeparator,nameValueSeparator);};Spry.Utils.getLocationParamsAsObject=function(){return Spry.Utils.urlComponentToObject(window.location.search.replace(/^\?/,""));};Spry.Utils.getURLHashParamsAsObject=function(url,paramSeparator,nameValueSeparator){var i;if(url &&(i=url.search("#"))>=0)
return Spry.Utils.urlComponentToObject(url.substr(i+1),paramSeparator,nameValueSeparator);return new Object;};Spry.Utils.getURLParamsAsObject=function(url){var s;if(url &&(s=url.match(/\?[^#]*/))&& s)
return Spry.Utils.urlComponentToObject(s[0].replace(/^\?/,""));return new Object;};
