	/* ##### Start Loading ##### */
document.write('<div id=\"cache\"><b>Loading...<\/b><br \/><img src="img/wait.gif" alt="" /></div>');
document.write('<script type=\"text\/javascript\">');
var nava = (document.layers);
var dom = (document.getElementById);
var iex = (document.all);
if (nava) { cach = document.cache }
else if (dom) { cach = document.getElementById("cache").style }
else if (iex) { cach = cache.style }
largeur = screen.width;
cach.visibility = "visible";
function cacheOff()
{cach.visibility = "hidden";}
document.write('<\/script>');
	/* ##### End Loading ##### */
	/* ##### Start CSS ##### */
document.write('<link href=\"css\/main.css\" type=\"text\/css\" rel=\"stylesheet\" \/>');
	/* ##### End CSS ##### */
if(navigator.appVersion.indexOf('IE') == -1){ setTimeout("location.href = '#';",3000); }
	/* ##### Start Flash ##### */
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?');
  else
    return src + ext;
}
function AC_Generateobj(objAttrs, params, embedAttrs)
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';
  document.write(str);
}
function AC_FL_RunContent(){
  var ret =
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}
function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}
function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();
    switch (currArg){
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace":
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
	/* ##### End Flash ##### */
	/* ##### Start Preview ##### */
var FadeInStep 	= 10;
var FadeOutStep 	= 10;
if(!window.JSFX)
JSFX=new Object();
JSFX.RolloverObjects=new Array();
JSFX.Rollover = function(name, img)
{
	JSFX.RolloverObjects[name]=new Image();
	JSFX.RolloverObjects[name].img_src = img;	
	if(!JSFX.Rollover.postLoad)
		JSFX.RolloverObjects[name].src = img;
}
JSFX.Rollover.postLoad = false;
JSFX.Rollover.loadImages = function()
{
	var i;
	for(i in JSFX.RolloverObjects)
	{
		r=JSFX.RolloverObjects[i];
		r.src=r.img_src;
	}
}
JSFX.Rollover.error = function(n)
{
		alert("JSFX.Rollover - An Error has been detected\n"
			+ "----------------------------------\n"
			+ "You must define a JSFX.Rollover in your document\n"
			+ "JSFX.Rollover(\""+n+"\",\"your_on_img.gif\")\n"
			+ "(check the spelling of your JSFX.Rollovers)");
}
JSFX.getImg = function(n, d) 
{
	var img = d.images[n];
	if(!img && d.layers)  
		for(var i=0 ; !img && i<d.layers.length ; i++)
			img=JSFX.getImg(n,d.layers[i].document);
	return img;
}
JSFX.findImg = function(n, d) 
{
	var img = JSFX.getImg(n, d);
	if(!img)
	{
		alert("JSFX.findImg - An Error has been detected\n"
			+ "----------------------------------\n"
			+ "You must define an image in your document\n"
			+ "<IMG SRC=\"your_image.ext\" NAME=\""+n+"\">\n"
			+ "(check the NAME= attribute of your images)");

		return(new Image());
	}
	return img;
}
JSFX.ImageFadeRunning=false;
JSFX.ImageFadeInterval=10;
JSFX.imgFadeIn = function(img, imgSrc)
{
	if(img) 
	{
		if(img.state == null) 
		{
			img.state = "OFF";
			img.index = 0;
			img.next_on    = null;
		}
		if(img.state == "OFF")
		{
			if(img.src.indexOf(imgSrc) == -1)
				img.src=imgSrc;
			img.currSrc = imgSrc;
			img.state = "FADE_IN";
			JSFX.startFading();
		}
		else if( img.state == "FADE_IN_OUT"
			|| img.state == "FADE_OUT_IN"
			|| img.state == "FADE_OUT")
		{
			if(img.currSrc == imgSrc)
				img.state = "FADE_IN";
			else
			{
				img.next_on = imgSrc;
				img.state="FADE_OUT_IN";
			}
		}
	}
}
JSFX.imgFadeOut = function(img)
{
	if(img)
	{
		if(img.state=="ON")
		{
			img.state="FADE_OUT";
			JSFX.startFading();
		}
		else if(img.state == "FADE_IN")
		{
			img.state="FADE_IN_OUT";
		}
		else if(img.state=="FADE_OUT_IN")
		{
			img.next_on == null;
			img.state = "FADE_OUT";
		}
	}
}
JSFX.startFading = function()
{
	if(!JSFX.ImageFadeRunning)
		JSFX.ImageFadeAnimation();
}
JSFX.ImageFadeAnimation = function()
{
	JSFX.ImageFadeRunning = false;
	for(i=0 ; i<document.images.length ; i++)
	{
		var img = document.images[i];
		if(img.state)
		{
			if(img.state == "FADE_IN")
			{
				img.index+=FadeInStep;
				if(img.index > 1)
					img.index = 100;
				if(img.filters)
					img.filters.alpha.opacity = img.index;
				else
					img.style.MozOpacity = img.index/100;
				if(img.index == 100)
					img.state="ON";
				else
					JSFX.ImageFadeRunning = true;
			}
			else if(img.state == "FADE_IN_OUT")
			{
				img.index+=FadeInStep;
				if(img.index > 1)
					img.index = 100;
				if(img.filters)
					img.filters.alpha.opacity = img.index;
				else 
					img.style.MozOpacity = img.index/100;
				if(img.index == 100)
					img.state="FADE_OUT";
				JSFX.ImageFadeRunning = true;
			}
			else if(img.state == "FADE_OUT")
			{
				img.index-=FadeOutStep;
				if(img.index < 100)
					img.index = 0;
				if(img.filters)
					img.filters.alpha.opacity = img.index;
				else
					img.style.MozOpacity = img.index/100;
				if(img.index == 0)
					img.state="OFF";
				else
					JSFX.ImageFadeRunning = true;
			}
			else if(img.state == "FADE_OUT_IN")
			{
				img.index-=FadeOutStep;
				if(img.index < 0)
					img.index = 0;
				if(img.filters)
					img.filters.alpha.opacity = img.index;
				else
					img.style.MozOpacity = img.index/101;
				if(img.index == 0)
				{
					img.src = img.next_on;
					img.currSrc = img.next_on;
					img.state="FADE_IN";
				}
				JSFX.ImageFadeRunning = true;
			}
		}
	}
	if(JSFX.ImageFadeRunning)
		setTimeout("JSFX.ImageFadeAnimation()", JSFX.ImageFadeInterval);
}
JSFX.hasOpacity = function(obj)
{
	if(document.layers)
		return false;
	if(window.opera)
		return false;
	if(navigator.userAgent.toLowerCase().indexOf("mac") != -1)
		return false;

	return true;
}
JSFX.fadeIn = function(imgName, rollName)
{
	if(rollName == null)
		rollName=imgName;
	if(!JSFX.RolloverObjects[rollName])
	{
		JSFX.Rollover.error(rollName);
		return;
	}
	var img = JSFX.findImg(imgName, document);
	if(JSFX.hasOpacity(img))
		JSFX.imgFadeIn(img, JSFX.RolloverObjects[rollName].img_src);
	else
	{
		if(img.offSrc==null)
			img.offSrc=img.src;
		img.src=JSFX.RolloverObjects[rollName].img_src;
	}
}
JSFX.fadeOut = function(imgName)
{
	var img = JSFX.findImg(imgName, document);
	if(JSFX.hasOpacity(img))
		JSFX.imgFadeOut(img);
	else
		img.src=img.offSrc;
}
JSFX.imgOn = function(imgName, rollName)
{
	if(rollName == null)
		rollName=imgName;
	if(!JSFX.RolloverObjects[rollName])
	{
		JSFX.Rollover.error(rollName);
		return;
	}
	var img = JSFX.findImg(imgName,document);
	if(img.offSrc==null)
		img.offSrc=img.src;
	img.src=JSFX.RolloverObjects[rollName].img_src;
}
JSFX.imgOff = function(imgName)
{
	var img = JSFX.findImg(imgName,document);
	img.src=img.offSrc;
}
FadeOutStep=5;JSFX.Rollover("");
JSFX.Rollover("description1", "img/preview/accueil.jpg");
JSFX.Rollover("description2", "img/preview/tuto.jpg");
JSFX.Rollover("description3", "img/preview/forum.jpg");
	/* ##### End Preview ##### */
	/* ##### Start Random ##### */
// Nombre d'images
var NbImages = 175;
// Table contenant les images
ListeImages = new Array(NbImages);
	ListeImages[0] = "img/wall/wall01.jpg";
	ListeImages[1] = "img/wall/wall02.jpg";
	ListeImages[2] = "img/wall/wall03.jpg";
	ListeImages[3] = "img/wall/wall04.jpg";
	ListeImages[4] = "img/wall/wall05.jpg";
	ListeImages[5] = "img/wall/wall06.jpg";
	ListeImages[6] = "img/wall/wall07.jpg";
	ListeImages[7] = "img/wall/wall08.jpg";
	ListeImages[8] = "img/wall/wall09.jpg";
	ListeImages[9] = "img/wall/wall10.jpg";
	ListeImages[10] = "img/wall/wall11.jpg";
	ListeImages[11] = "img/wall/wall12.jpg";
	ListeImages[12] = "img/wall/wall13.jpg";
	ListeImages[13] = "img/wall/wall14.jpg";
	ListeImages[14] = "img/wall/wall15.jpg";
	ListeImages[15] = "img/wall/wall16.jpg";
	ListeImages[16] = "img/wall/wall17.jpg";
	ListeImages[17] = "img/wall/wall18.jpg";
	ListeImages[18] = "img/wall/wall19.jpg";
	ListeImages[19] = "img/wall/wall20.jpg";
	ListeImages[20] = "img/wall/wall21.jpg";
	ListeImages[21] = "img/wall/wall22.jpg";
	ListeImages[22] = "img/wall/wall23.jpg";
	ListeImages[23] = "img/wall/wall24.jpg";
	ListeImages[24] = "img/wall/wall25.jpg";
	ListeImages[25] = "img/wall/wall26.jpg";
	ListeImages[26] = "img/wall/wall27.jpg";
	ListeImages[27] = "img/wall/wall28.jpg";
	ListeImages[28] = "img/wall/wall29.jpg";
	ListeImages[29] = "img/wall/wall30.jpg";
	ListeImages[30] = "img/wall/wall31.jpg";
	ListeImages[31] = "img/wall/wall32.jpg";
	ListeImages[32] = "img/wall/wall33.jpg";
	ListeImages[33] = "img/wall/wall34.jpg";
	ListeImages[34] = "img/wall/wall35.jpg";
	ListeImages[35] = "img/wall/wall36.jpg";
	ListeImages[36] = "img/wall/wall37.jpg";
	ListeImages[37] = "img/wall/wall38.jpg";
	ListeImages[38] = "img/wall/wall39.jpg";
	ListeImages[39] = "img/wall/wall40.jpg";
	ListeImages[40] = "img/wall/wall41.jpg";
	ListeImages[41] = "img/wall/wall42.jpg";
	ListeImages[42] = "img/wall/wall43.jpg";
	ListeImages[43] = "img/wall/wall44.jpg";
	ListeImages[44] = "img/wall/wall45.jpg";
	ListeImages[45] = "img/wall/wall46.jpg";
	ListeImages[46] = "img/wall/wall47.jpg";
	ListeImages[47] = "img/wall/wall48.jpg";
	ListeImages[48] = "img/wall/wall49.jpg";
	ListeImages[49] = "img/wall/wall50.jpg";
	ListeImages[50] = "img/wall/wall51.jpg";
	ListeImages[51] = "img/wall/wall52.jpg";
	ListeImages[52] = "img/wall/wall53.jpg";
	ListeImages[53] = "img/wall/wall54.jpg";
	ListeImages[54] = "img/wall/wall55.jpg";
	ListeImages[55] = "img/wall/wall56.jpg";
	ListeImages[56] = "img/wall/wall57.jpg";
	ListeImages[57] = "img/wall/wall58.jpg";
	ListeImages[58] = "img/wall/wall59.jpg";
	ListeImages[59] = "img/wall/wall60.jpg";
	ListeImages[60] = "img/wall/wall61.jpg";
	ListeImages[61] = "img/wall/wall62.jpg";
	ListeImages[62] = "img/wall/wall63.jpg";
	ListeImages[63] = "img/wall/wall64.jpg";
	ListeImages[64] = "img/wall/wall65.jpg";
	ListeImages[65] = "img/wall/wall66.jpg";
	ListeImages[66] = "img/wall/wall67.jpg";
	ListeImages[67] = "img/wall/wall68.jpg";
	ListeImages[68] = "img/wall/wall69.jpg";
	ListeImages[69] = "img/wall/wall70.jpg";
	ListeImages[70] = "img/wall/wall71.jpg";
	ListeImages[71] = "img/wall/wall72.jpg";
	ListeImages[72] = "img/wall/wall73.jpg";
	ListeImages[73] = "img/wall/wall74.jpg";
	ListeImages[74] = "img/wall/wall75.jpg";
	ListeImages[75] = "img/wall/wall76.jpg";
	ListeImages[76] = "img/wall/wall77.jpg";
	ListeImages[77] = "img/wall/wall78.jpg";
	ListeImages[78] = "img/wall/wall79.jpg";
	ListeImages[79] = "img/wall/wall80.jpg";
	ListeImages[80] = "img/wall/wall81.jpg";
	ListeImages[81] = "img/wall/wall82.jpg";
	ListeImages[82] = "img/wall/wall83.jpg";
	ListeImages[83] = "img/wall/wall84.jpg";
	ListeImages[84] = "img/wall/wall85.jpg";
	ListeImages[85] = "img/wall/wall86.jpg";
	ListeImages[86] = "img/wall/wall87.jpg";
	ListeImages[87] = "img/wall/wall88.jpg";
	ListeImages[88] = "img/wall/wall89.jpg";
	ListeImages[89] = "img/wall/wall90.jpg";
	ListeImages[90] = "img/wall/wall91.jpg";
	ListeImages[91] = "img/wall/wall92.jpg";
	ListeImages[92] = "img/wall/wall93.jpg";
	ListeImages[93] = "img/wall/wall94.jpg";
	ListeImages[94] = "img/wall/wall95.jpg";
	ListeImages[95] = "img/wall/wall96.jpg";
	ListeImages[96] = "img/wall/wall97.jpg";
	ListeImages[97] = "img/wall/wall98.jpg";
	ListeImages[98] = "img/wall/wall99.jpg";
	ListeImages[99] = "img/wall/wall100.jpg";
	ListeImages[100] = "img/wall/wall101.jpg";
	ListeImages[101] = "img/wall/wall102.jpg";
	ListeImages[102] = "img/wall/wall103.jpg";
	ListeImages[103] = "img/wall/wall104.jpg";
	ListeImages[104] = "img/wall/wall105.jpg";
	ListeImages[105] = "img/wall/wall106.jpg";
	ListeImages[106] = "img/wall/wall107.jpg";
	ListeImages[107] = "img/wall/wall108.jpg";
	ListeImages[108] = "img/wall/wall109.jpg";
	ListeImages[109] = "img/wall/wall110.jpg";
	ListeImages[110] = "img/wall/wall111.jpg";
	ListeImages[111] = "img/wall/wall112.jpg";
	ListeImages[112] = "img/wall/wall113.jpg";
	ListeImages[113] = "img/wall/wall114.jpg";
	ListeImages[114] = "img/wall/wall115.jpg";
	ListeImages[115] = "img/wall/wall116.jpg";
	ListeImages[116] = "img/wall/wall117.jpg";
	ListeImages[117] = "img/wall/wall118.jpg";
	ListeImages[118] = "img/wall/wall119.jpg";
	ListeImages[119] = "img/wall/wall120.jpg";
	ListeImages[120] = "img/wall/wall121.jpg";
	ListeImages[121] = "img/wall/wall122.jpg";
	ListeImages[122] = "img/wall/wall123.jpg";
	ListeImages[123] = "img/wall/wall124.jpg";
	ListeImages[124] = "img/wall/wall125.jpg";
	ListeImages[125] = "img/wall/wall126.jpg";
	ListeImages[126] = "img/wall/wall127.jpg";
	ListeImages[127] = "img/wall/wall128.jpg";
	ListeImages[128] = "img/wall/wall129.jpg";
	ListeImages[129] = "img/wall/wall130.jpg";
	ListeImages[130] = "img/wall/wall131.jpg";
	ListeImages[131] = "img/wall/wall132.jpg";
	ListeImages[132] = "img/wall/wall133.jpg";
	ListeImages[133] = "img/wall/wall134.jpg";
	ListeImages[134] = "img/wall/wall135.jpg";
	ListeImages[135] = "img/wall/wall136.jpg";
	ListeImages[136] = "img/wall/wall137.jpg";
	ListeImages[137] = "img/wall/wall138.jpg";
	ListeImages[138] = "img/wall/wall139.jpg";
	ListeImages[139] = "img/wall/wall140.jpg";
	ListeImages[140] = "img/wall/wall141.jpg";
	ListeImages[141] = "img/wall/wall142.jpg";
	ListeImages[142] = "img/wall/wall143.jpg";
	ListeImages[143] = "img/wall/wall144.jpg";
	ListeImages[144] = "img/wall/wall145.jpg";
	ListeImages[145] = "img/wall/wall146.jpg";
	ListeImages[146] = "img/wall/wall147.jpg";
	ListeImages[147] = "img/wall/wall148.jpg";
	ListeImages[148] = "img/wall/wall149.jpg";
	ListeImages[149] = "img/wall/wall150.jpg";
	ListeImages[150] = "img/wall/wall151.jpg";
	ListeImages[151] = "img/wall/wall152.jpg";
	ListeImages[152] = "img/wall/wall153.jpg";
	ListeImages[153] = "img/wall/wall154.jpg";
	ListeImages[154] = "img/wall/wall155.jpg";
	ListeImages[155] = "img/wall/wall156.jpg";
	ListeImages[156] = "img/wall/wall157.jpg";
	ListeImages[157] = "img/wall/wall158.jpg";
	ListeImages[158] = "img/wall/wall159.jpg";
	ListeImages[159] = "img/wall/wall160.jpg";
	ListeImages[160] = "img/wall/wall161.jpg";
	ListeImages[161] = "img/wall/wall162.jpg";
	ListeImages[162] = "img/wall/wall163.jpg";
	ListeImages[163] = "img/wall/wall164.jpg";
	ListeImages[164] = "img/wall/wall165.jpg";
	ListeImages[165] = "img/wall/wall166.jpg";
	ListeImages[166] = "img/wall/wall167.jpg";
	ListeImages[167] = "img/wall/wall168.jpg";
	ListeImages[168] = "img/wall/wall169.jpg";
	ListeImages[169] = "img/wall/wall170.jpg";
	ListeImages[170] = "img/wall/wall171.jpg";
	ListeImages[171] = "img/wall/wall172.jpg";
	ListeImages[172] = "img/wall/wall173.jpg";
	ListeImages[173] = "img/wall/wall174.jpg";
	ListeImages[174] = "img/wall/wall175.jpg";
function Aleatoire(mini,maxi) {
	var x = -1;
	while (x < mini) {
		x = Math.round(Math.random() * maxi);
	}
		return x;
}
function PutImage() {
	i = Aleatoire(0,NbImages-1);
	document.write("<img src="+ListeImages[i]+" alt=\"\" \/>");
}
document.write('<div class=\"divaleatoire\">');
PutImage();
document.write('<\/div>');
	/* ##### End Random ##### */
	/* ##### Star Scroll Color ##### */
couleurligne = "#ffffff";
couleurbase = "#ffffff";
couleurover = "#ffffff";
function scrollBar(face)
	{
	with(document.body.style)
		{
		scrollbarDarkShadowColor="#121212";
		scrollbar3dLightColor="#121212";
		scrollbarArrowColor="#666666";
		scrollbarBaseColor=face;
		scrollbarFaceColor="#121212";
		scrollbarHighlightColor="#121212";
		scrollbarShadowColor="#121212";
		scrollbarTrackColor="#1e1e1e";
		}
	}
function colorBar(){
		var w = document.body.clientWidth;
		var h = document.body.clientHeight;
		var x = event.clientX;
		var y = event.clientY;
		if(x>w) scrollBar(couleurover);
		else scrollBar(couleurbase);
	}
if (document.all){
scrollBar(couleurbase);
document.onmousemove=colorBar;
}
	/* ##### End Scroll Color ##### */
	/* ##### Start DomTab ##### */
domtab={
	tabClass:'domtab', // class to trigger tabbing
	listClass:'domtabs', // class of the menus
	activeClass:'active', // class of current link
	contentElements:'div', // elements to loop through
	backToLinks:/#top/, // pattern to check "back to top" links
	printID:'domtabprintview', // id of the print all link
	showAllLinkText:'show all content', // text for the print all link
	prevNextIndicator:'doprevnext', // class to trigger prev and next links
	prevNextClass:'prevnext', // class of the prev and next list
	prevLabel:'previous', // HTML content of the prev link
	nextLabel:'next', // HTML content of the next link
	prevClass:'prev', // class for the prev link
	nextClass:'next', // class for the next link
	init:function(){
		var temp;
		if(!document.getElementById || !document.createTextNode){return;}
		var tempelm=document.getElementsByTagName('div');
		for(var i=0;i<tempelm.length;i++){
			if(!domtab.cssjs('check',tempelm[i],domtab.tabClass)){continue;}
			domtab.initTabMenu(tempelm[i]);
			domtab.removeBackLinks(tempelm[i]);
			if(domtab.cssjs('check',tempelm[i],domtab.prevNextIndicator)){
				domtab.addPrevNext(tempelm[i]);
			}
			domtab.checkURL();
		}
		if(document.getElementById(domtab.printID)
		&& !document.getElementById(domtab.printID).getElementsByTagName('a')[0]){
			var newlink=document.createElement('a');
			newlink.setAttribute('href','#');
			domtab.addEvent(newlink,'click',domtab.showAll,false);
			newlink.onclick=function(){return false;} // safari hack
			newlink.appendChild(document.createTextNode(domtab.showAllLinkText));
			document.getElementById(domtab.printID).appendChild(newlink);
		}
	},
	checkURL:function(){
		var id;
		var loc=window.location.toString();
		loc=/#/.test(loc)?loc.match(/#(\w.+)/)[1]:'';
		if(loc==''){return;}
		var elm=document.getElementById(loc);
		if(!elm){return;}
		var parentMenu=elm.parentNode.parentNode.parentNode;
		parentMenu.currentSection=loc;
		parentMenu.getElementsByTagName(domtab.contentElements)[0].style.display='none';
		domtab.cssjs('remove',parentMenu.getElementsByTagName('a')[0].parentNode,domtab.activeClass);
		var links=parentMenu.getElementsByTagName('a');
		for(i=0;i<links.length;i++){
			if(!links[i].getAttribute('href')){continue;}
			if(!/#/.test(links[i].getAttribute('href').toString())){continue;}
			id=links[i].href.match(/#(\w.+)/)[1];
			if(id==loc){
				var cur=links[i].parentNode.parentNode;
				domtab.cssjs('add',links[i].parentNode,domtab.activeClass);
				break;
			}
		}
		domtab.changeTab(elm,1);
		elm.focus();
		cur.currentLink=links[i];
		cur.currentSection=loc;
	},
	showAll:function(e){
		document.getElementById(domtab.printID).parentNode.removeChild(document.getElementById(domtab.printID));
		var tempelm=document.getElementsByTagName('div');
		for(var i=0;i<tempelm.length;i++){
			if(!domtab.cssjs('check',tempelm[i],domtab.tabClass)){continue;}
			var sec=tempelm[i].getElementsByTagName(domtab.contentElements);
			for(var j=0;j<sec.length;j++){
				sec[j].style.display='block';
			}
		}
		var tempelm=document.getElementsByTagName('ul');
		for(i=0;i<tempelm.length;i++){
			if(!domtab.cssjs('check',tempelm[i],domtab.prevNextClass)){continue;}
			tempelm[i].parentNode.removeChild(tempelm[i]);
			i--;
		}
		domtab.cancelClick(e);
	},
	addPrevNext:function(menu){
		var temp;
		var sections=menu.getElementsByTagName(domtab.contentElements);
		for(var i=0;i<sections.length;i++){
			temp=domtab.createPrevNext();
			if(i==0){
				temp.removeChild(temp.getElementsByTagName('li')[0]);
			}
			if(i==sections.length-1){
				temp.removeChild(temp.getElementsByTagName('li')[1]);
			}
			temp.i=i; // h4xx0r!
			temp.menu=menu;
			sections[i].appendChild(temp);
		}
	},
	removeBackLinks:function(menu){
		var links=menu.getElementsByTagName('a');
		for(var i=0;i<links.length;i++){
			if(!domtab.backToLinks.test(links[i].href)){continue;}
			links[i].parentNode.removeChild(links[i]);
			i--;
		}
	},
	initTabMenu:function(menu){
		var id;
		var lists=menu.getElementsByTagName('ul');
		for(var i=0;i<lists.length;i++){
			if(domtab.cssjs('check',lists[i],domtab.listClass)){
				var thismenu=lists[i];
				break;
			}
		}
		if(!thismenu){return;}
		thismenu.currentSection='';
		thismenu.currentLink='';
		var links=thismenu.getElementsByTagName('a');
		for(i=0;i<links.length;i++){
			if(!/#/.test(links[i].getAttribute('href').toString())){continue;}
			id=links[i].href.match(/#(\w.+)/)[1];
			if(document.getElementById(id)){
				domtab.addEvent(links[i],'click',domtab.showTab,false);
				links[i].onclick=function(){return false;} // safari hack
				domtab.changeTab(document.getElementById(id),0);
			}
		}
		id=links[0].href.match(/#(\w.+)/)[1];
		if(document.getElementById(id)){
			domtab.changeTab(document.getElementById(id),1);
			thismenu.currentSection=id;
			thismenu.currentLink=links[0];
			domtab.cssjs('add',links[0].parentNode,domtab.activeClass);
		}
	},
	createPrevNext:function(){
		// this would be so much easier with innerHTML, darn you standards fetish!
		var temp=document.createElement('ul');
		temp.className=domtab.prevNextClass;
		temp.appendChild(document.createElement('li'));
		temp.getElementsByTagName('li')[0].appendChild(document.createElement('a'));
		temp.getElementsByTagName('a')[0].setAttribute('href','#');
		temp.getElementsByTagName('a')[0].innerHTML=domtab.prevLabel;
		temp.getElementsByTagName('li')[0].className=domtab.prevClass;
		temp.appendChild(document.createElement('li'));
		temp.getElementsByTagName('li')[1].appendChild(document.createElement('a'));
		temp.getElementsByTagName('a')[1].setAttribute('href','#');
		temp.getElementsByTagName('a')[1].innerHTML=domtab.nextLabel;
		temp.getElementsByTagName('li')[1].className=domtab.nextClass;
		domtab.addEvent(temp.getElementsByTagName('a')[0],'click',domtab.navTabs,false);
		domtab.addEvent(temp.getElementsByTagName('a')[1],'click',domtab.navTabs,false);
		// safari fix
		temp.getElementsByTagName('a')[0].onclick=function(){return false;}
		temp.getElementsByTagName('a')[1].onclick=function(){return false;}
		return temp;
	},
	navTabs:function(e){
		var li=domtab.getTarget(e);
		var menu=li.parentNode.parentNode.menu;
		var count=li.parentNode.parentNode.i;
		var section=menu.getElementsByTagName(domtab.contentElements);
		var links=menu.getElementsByTagName('a');
		var othercount=(li.parentNode.className==domtab.prevClass)?count-1:count+1;
		section[count].style.display='none';
		domtab.cssjs('remove',links[count].parentNode,domtab.activeClass);
		section[othercount].style.display='block';
		domtab.cssjs('add',links[othercount].parentNode,domtab.activeClass);
		var parent=links[count].parentNode.parentNode;
		parent.currentLink=links[othercount];
		parent.currentSection=links[othercount].href.match(/#(\w.+)/)[1];
		domtab.cancelClick(e);
	},
	changeTab:function(elm,state){
		do{
			elm=elm.parentNode;
		} while(elm.nodeName.toLowerCase()!=domtab.contentElements)
		elm.style.display=state==0?'none':'block';
	},
	showTab:function(e){
		var o=domtab.getTarget(e);
		if(o.parentNode.parentNode.currentSection!=''){
			domtab.changeTab(document.getElementById(o.parentNode.parentNode.currentSection),0);
			domtab.cssjs('remove',o.parentNode.parentNode.currentLink.parentNode,domtab.activeClass);
		}
		var id=o.href.match(/#(\w.+)/)[1];
		o.parentNode.parentNode.currentSection=id;
		o.parentNode.parentNode.currentLink=o;
		domtab.cssjs('add',o.parentNode,domtab.activeClass);
		domtab.changeTab(document.getElementById(id),1);
		document.getElementById(id).focus();
		domtab.cancelClick(e);
	},
/* helper methods */
	getTarget:function(e){
		var target = window.event ? window.event.srcElement : e ? e.target : null;
		if (!target){return false;}
		if (target.nodeName.toLowerCase() != 'a'){target = target.parentNode;}
		return target;
	},
	cancelClick:function(e){
		if (window.event){
			window.event.cancelBubble = true;
			window.event.returnValue = false;
			return;
		}
		if (e){
			e.stopPropagation();
			e.preventDefault();
		}
	},
	addEvent: function(elm, evType, fn, useCapture){
		if (elm.addEventListener)
		{
			elm.addEventListener(evType, fn, useCapture);
			return true;
		} else if (elm.attachEvent) {
			var r = elm.attachEvent('on' + evType, fn);
			return r;
		} else {
			elm['on' + evType] = fn;
		}
	},
	cssjs:function(a,o,c1,c2){
		switch (a){
			case 'swap':
				o.className=!domtab.cssjs('check',o,c1)?o.className.replace(c2,c1):o.className.replace(c1,c2);
			break;
			case 'add':
				if(!domtab.cssjs('check',o,c1)){o.className+=o.className?' '+c1:c1;}
			break;
			case 'remove':
				var rep=o.className.match(' '+c1)?' '+c1:c1;
				o.className=o.className.replace(rep,'');
			break;
			case 'check':
				var found=false;
				var temparray=o.className.split(' ');
				for(var i=0;i<temparray.length;i++){
					if(temparray[i]==c1){found=true;}
				}
				return found;
			break;
		}
	}
}
domtab.addEvent(window, 'load', domtab.init, false);
	/* ##### End DomTab ##### */
