(function ($) {
	$.extend({
		getHashArray: function () {
			var a = window.location.hash.replace("#", "");
			var b = {};
			if (!a) {
				return b
			}
			var c = a.split(/[;&]/);
			for (var i = 0; i < c.length; i++) {
				var d = c[i].split('=');
				if (!d || d.length != 2) {
					continue
				}
				var e = unescape(d[0]);
				var f = unescape(d[1]);
				f = f.replace(/\+/g, ' ');
				b[e] = f
			}
			return b;
		},
		setHashArray:function(a) {
			var NewHash = "";
			for(u in a)
			{
				if (NewHash != "")
					NewHash += "&";
				NewHash += escape(u) + "=" + escape(a[u]);
			}
			window.location.hash = NewHash;
		},
		setHash: function(Key, Value) {
			var UrlHash = $.getHashArray();
			if(Key in UrlHash)
				delete UrlHash[Key];
			if(Value != "" && Value)
				UrlHash[Key] = Value;
			$.setHashArray(UrlHash);
		},
		getHash: function(Key) {
			return $.getHashArray()[Key];
		}
	});
})(jQuery);
