$estr = function() { return js.Boot.__string_rec(this,''); }
if(typeof ca=='undefined') ca = {}
if(!ca.lesite) ca.lesite = {}
if(!ca.lesite.contact) ca.lesite.contact = {}
ca.lesite.contact.Contact = function(p) { if( p === $_ ) return; {
	this._contact = new JQuery("#contact");
}}
ca.lesite.contact.Contact.__name__ = ["ca","lesite","contact","Contact"];
ca.lesite.contact.Contact.prototype._contact = null;
ca.lesite.contact.Contact.prototype._isLoaded = null;
ca.lesite.contact.Contact.prototype.insert = function() {
	if(!this._isLoaded) {
		this._contact.load("contactSection.html",$closure(this,"onSectionLoaded"));
	}
	else {
		this.introAnim();
	}
}
ca.lesite.contact.Contact.prototype.introAnim = function() {
	this._contact.fadeIn(500);
}
ca.lesite.contact.Contact.prototype.onRemoveFinished = null;
ca.lesite.contact.Contact.prototype.onSectionLoaded = function() {
	this._isLoaded = true;
	{
		Cufon.replace(".ronnia",{ fontFamily : "ronnia"});
	}
	this.introAnim();
}
ca.lesite.contact.Contact.prototype.remove = function() {
	this._contact.fadeOut(300,this.onRemoveFinished);
}
ca.lesite.contact.Contact.prototype.__class__ = ca.lesite.contact.Contact;
if(!ca.lesite.menu) ca.lesite.menu = {}
ca.lesite.menu.Menu = function(p) { if( p === $_ ) return; {
	this._givenMenuIndex = 0;
	var divs = js.Lib.document.getElementById("menu").getElementsByTagName("li");
	var menuItem;
	this._items = [];
	{
		var _g1 = 0, _g = divs.length;
		while(_g1 < _g) {
			var i = _g1++;
			if(divs[i].className == "menuItem") {
				menuItem = new ca.lesite.menu.MenuItem();
				menuItem.index = divs[i].childNodes[0].innerHTML;
				divs[i].className = "ca.lesite.menu.MenuItem menuItem";
				Distill.instance.bind(menuItem,divs[i],this.removeSpace(menuItem.index));
				divs[i].className = ("ca.lesite.menu.MenuItem" + this.removeSpace(menuItem.index)) + " menuItem";
				this._items.push(menuItem);
			}
		}
	}
}}
ca.lesite.menu.Menu.__name__ = ["ca","lesite","menu","Menu"];
ca.lesite.menu.Menu.prototype._givenMenuIndex = null;
ca.lesite.menu.Menu.prototype._items = null;
ca.lesite.menu.Menu.prototype._menuIds = null;
ca.lesite.menu.Menu.prototype.removeSpace = function(str) {
	return str.split(" ").join("");
}
ca.lesite.menu.Menu.prototype.__class__ = ca.lesite.menu.Menu;
if(typeof js=='undefined') js = {}
if(!js.fx) js.fx = {}
js.fx.Anim = function(p) { if( p === $_ ) return; {
	this.fps = 60;
	this.duration = 250;
	this.transition = js.fx.TransitionFunctions.get(js.fx.Transition.Linear);
}}
js.fx.Anim.__name__ = ["js","fx","Anim"];
js.fx.Anim.prototype.cancel = function() {
	if(this.stopTimer() && this.onCancel != null) this.onCancel();
}
js.fx.Anim.prototype.complete = function() {
	if(this.stopTimer()) {
		if(this.onComplete != null) this.onComplete();
		return true;
	}
	return false;
}
js.fx.Anim.prototype.duration = null;
js.fx.Anim.prototype.fps = null;
js.fx.Anim.prototype.next = function() {
	var now = Date.now().getTime();
	if(now < this.time + this.duration) {
		var delta = this.transition((now - this.time) / this.duration);
		this.set(delta);
	}
	else {
		this.set(1);
		this.complete();
	}
}
js.fx.Anim.prototype.onCancel = null;
js.fx.Anim.prototype.onComplete = null;
js.fx.Anim.prototype.onStart = null;
js.fx.Anim.prototype.pause = function() {
	this.stopTimer();
}
js.fx.Anim.prototype.resume = function() {
	this.startTimer();
}
js.fx.Anim.prototype.set = function(delta) {
	throw "set(delta:Float) not implemented";
}
js.fx.Anim.prototype.setTransition = function(t) {
	this.transition = js.fx.TransitionFunctions.get(t);
}
js.fx.Anim.prototype.start = function() {
	this.time = 0;
	this.startTimer();
	if(this.onStart != null) this.onStart();
}
js.fx.Anim.prototype.startTimer = function() {
	if(this.timer != null) return false;
	this.time = Date.now().getTime() - this.time;
	this.timer = js.fx.Timer.periodical(function(f) {
		return function() {
			return f();
		}
	}($closure(this,"next")),Math.round(1000 / this.fps));
	return true;
}
js.fx.Anim.prototype.stopTimer = function() {
	if(this.timer == null) return false;
	this.time = Date.now().getTime() - this.time;
	this.timer = js.fx.Timer.clear(this.timer);
	return true;
}
js.fx.Anim.prototype.time = null;
js.fx.Anim.prototype.timer = null;
js.fx.Anim.prototype.transition = null;
js.fx.Anim.prototype.__class__ = js.fx.Anim;
js.fx.Slide = function(e,k,noFlow) { if( e === $_ ) return; {
	js.fx.Anim.apply(this,[]);
	this.keepElementSpace = noFlow == true;
	this.element = e;
	this.kind = k;
	if(this.element.wrapper == null) {
		var parent = this.element.parentNode;
		this.wrapper = js.Lib.document.createElement("DIV");
		parent.replaceChild(this.wrapper,this.element);
		this.wrapper.appendChild(this.element);
		js.fx.Style.setStyles(this.wrapper,js.fx.Style.getStyles(this.element,{ marginLeft : 0, marginTop : 0, marginRight : 0, marginBottom : 0, position : ""}));
		js.fx.Style.setStyles(this.wrapper,{ overflow : "hidden", position : "relative", padding : 0});
		js.fx.Style.setStyles(this.element,{ margin : "0px", position : "relative"});
		this.element.wrapper = this.wrapper;
	}
	else {
		this.wrapper = this.element.wrapper;
	}
	this.open = true;
}}
js.fx.Slide.__name__ = ["js","fx","Slide"];
js.fx.Slide.__super__ = js.fx.Anim;
for(var k in js.fx.Anim.prototype ) js.fx.Slide.prototype[k] = js.fx.Anim.prototype[k];
js.fx.Slide.prototype.complete = function() {
	if(js.fx.Anim.prototype.complete.apply(this,[])) {
		this.updateOpenStatus();
		return true;
	}
	return false;
}
js.fx.Slide.prototype.element = null;
js.fx.Slide.prototype.height = null;
js.fx.Slide.prototype.hide = function() {
	if(!this.open) return;
	this.open = false;
	this.set(0);
}
js.fx.Slide.prototype.keepElementSpace = null;
js.fx.Slide.prototype.kind = null;
js.fx.Slide.prototype.offset = null;
js.fx.Slide.prototype.open = null;
js.fx.Slide.prototype.set = function(delta) {
	this.height = this.element.offsetHeight;
	this.width = this.element.offsetWidth;
	if(this.keepElementSpace) {
		var $e = (this.kind);
		switch( $e[1] ) {
		case 0:
		{
			js.fx.Style.setStyles(this.element,{ marginTop : Std["int"]((this.open?-this.height * delta:-this.height + delta * this.height))});
		}break;
		case 1:
		{
			js.fx.Style.setStyles(this.element,{ marginTop : -1 * Std["int"]((this.open?-this.height * delta:-this.height + delta * this.height))});
		}break;
		case 2:
		{
			js.fx.Style.setStyles(this.element,{ marginLeft : Std["int"]((this.open?-this.width * delta:-this.width + delta * this.width))});
		}break;
		case 3:
		{
			js.fx.Style.setStyles(this.element,{ marginLeft : -1 * Std["int"]((this.open?-this.width * delta:-this.width + delta * this.width))});
		}break;
		}
	}
	else {
		var $e = (this.kind);
		switch( $e[1] ) {
		case 0:
		{
			var marginTop = Std["int"]((this.open?-this.height * delta:-this.height + delta * this.height));
			js.fx.Style.setStyles(this.element,{ marginTop : marginTop});
			js.fx.Style.setStyles(this.wrapper,{ height : this.height + marginTop});
		}break;
		case 2:
		{
			var marginLeft = Std["int"]((this.open?-this.width * delta:-this.width + delta * this.width));
			js.fx.Style.setStyles(this.element,{ marginLeft : marginLeft});
			js.fx.Style.setStyles(this.wrapper,{ width : this.width + marginLeft});
		}break;
		case 1:
		{
			var marginTop = -1 * Std["int"]((this.open?-this.height * delta:-this.height + delta * this.height));
			js.fx.Style.setStyles(this.wrapper,{ height : this.height - marginTop});
		}break;
		case 3:
		{
			var marginLeft = -1 * Std["int"]((this.open?-this.width * delta:-this.width + delta * this.width));
			js.fx.Style.setStyles(this.wrapper,{ width : this.width - marginLeft});
		}break;
		}
	}
}
js.fx.Slide.prototype.show = function() {
	if(this.open) return;
	this.open = true;
	this.set(0);
}
js.fx.Slide.prototype.toggle = function() {
	if(this.timer != null) {
		this.open = !this.open;
		var elapsed = Date.now().getTime() - this.time;
		var remain = this.duration - elapsed;
		this.time = Date.now().getTime() - remain;
	}
	else {
		this.start();
	}
}
js.fx.Slide.prototype.updateOpenStatus = function() {
	this.open = (function($this) {
		var $r;
		var $e = ($this.kind);
		switch( $e[1] ) {
		case 0:
		{
			$r = $this.element.style.marginTop == "0px";
		}break;
		case 1:
		{
			$r = ($this.keepElementSpace?$this.element.style.marginTop == "0px":$this.wrapper.offsetHeight == $this.height);
		}break;
		case 2:
		{
			$r = $this.element.style.marginLeft == "0px";
		}break;
		case 3:
		{
			$r = ($this.keepElementSpace?$this.element.style.marginLeft == "0px":$this.wrapper.offsetWidth == $this.width);
		}break;
		default:{
			$r = null;
		}break;
		}
		return $r;
	}(this));
}
js.fx.Slide.prototype.width = null;
js.fx.Slide.prototype.wrapper = null;
js.fx.Slide.prototype.__class__ = js.fx.Slide;
Reflect = function() { }
Reflect.__name__ = ["Reflect"];
Reflect.hasField = function(o,field) {
	if(o.hasOwnProperty != null) return o.hasOwnProperty(field);
	var arr = Reflect.fields(o);
	{ var $it0 = arr.iterator();
	while( $it0.hasNext() ) { var t = $it0.next();
	if(t == field) return true;
	}}
	return false;
}
Reflect.field = function(o,field) {
	var v = null;
	try {
		v = o[field];
	}
	catch( $e1 ) {
		{
			var e = $e1;
			null;
		}
	}
	return v;
}
Reflect.setField = function(o,field,value) {
	o[field] = value;
}
Reflect.callMethod = function(o,func,args) {
	return func.apply(o,args);
}
Reflect.fields = function(o) {
	if(o == null) return new Array();
	var a = new Array();
	if(o.hasOwnProperty) {
		
					for(var i in o)
						if( o.hasOwnProperty(i) )
							a.push(i);
				;
	}
	else {
		var t;
		try {
			t = o.__proto__;
		}
		catch( $e2 ) {
			{
				var e = $e2;
				{
					t = null;
				}
			}
		}
		if(t != null) o.__proto__ = null;
		
					for(var i in o)
						if( i != "__proto__" )
							a.push(i);
				;
		if(t != null) o.__proto__ = t;
	}
	return a;
}
Reflect.isFunction = function(f) {
	return typeof(f) == "function" && f.__name__ == null;
}
Reflect.compare = function(a,b) {
	return ((a == b)?0:((((a) > (b))?1:-1)));
}
Reflect.compareMethods = function(f1,f2) {
	if(f1 == f2) return true;
	if(!Reflect.isFunction(f1) || !Reflect.isFunction(f2)) return false;
	return f1.scope == f2.scope && f1.method == f2.method && f1.method != null;
}
Reflect.isObject = function(v) {
	if(v == null) return false;
	var t = typeof(v);
	return (t == "string" || (t == "object" && !v.__enum__) || (t == "function" && v.__name__ != null));
}
Reflect.deleteField = function(o,f) {
	if(!Reflect.hasField(o,f)) return false;
	delete(o[f]);
	return true;
}
Reflect.copy = function(o) {
	var o2 = { }
	{
		var _g = 0, _g1 = Reflect.fields(o);
		while(_g < _g1.length) {
			var f = _g1[_g];
			++_g;
			o2[f] = Reflect.field(o,f);
		}
	}
	return o2;
}
Reflect.makeVarArgs = function(f) {
	return function() {
		var a = new Array();
		{
			var _g1 = 0, _g = arguments.length;
			while(_g1 < _g) {
				var i = _g1++;
				a.push(arguments[i]);
			}
		}
		return f(a);
	}
}
Reflect.prototype.__class__ = Reflect;
ca.lesite.menu.MenuItem = function(p) { if( p === $_ ) return; {
	null;
}}
ca.lesite.menu.MenuItem.__name__ = ["ca","lesite","menu","MenuItem"];
ca.lesite.menu.MenuItem.prototype._anim = null;
ca.lesite.menu.MenuItem.prototype.click = function() {
	ca.lesite.Data.getInstance().changeSection(this.index);
}
ca.lesite.menu.MenuItem.prototype.domNode = null;
ca.lesite.menu.MenuItem.prototype.index = null;
ca.lesite.menu.MenuItem.prototype.load = function() {
	this._anim = new JQuery(this.domNode);
	this._anim.fadeTo(0,0);
}
ca.lesite.menu.MenuItem.prototype.mouseout = function() {
	this._anim.fadeTo(100,0);
}
ca.lesite.menu.MenuItem.prototype.mouseover = function() {
	this._anim.fadeTo(250,1);
}
ca.lesite.menu.MenuItem.prototype.onClick = null;
ca.lesite.menu.MenuItem.prototype.onOver = null;
ca.lesite.menu.MenuItem.prototype.__class__ = ca.lesite.menu.MenuItem;
if(!ca.lesite.services) ca.lesite.services = {}
ca.lesite.services.Services = function(p) { if( p === $_ ) return; {
	this._services = new JQuery("#services");
}}
ca.lesite.services.Services.__name__ = ["ca","lesite","services","Services"];
ca.lesite.services.Services.prototype._isLoaded = null;
ca.lesite.services.Services.prototype._services = null;
ca.lesite.services.Services.prototype.insert = function() {
	if(!this._isLoaded) {
		this._services.load("servicesSection.html",$closure(this,"onSectionLoaded"));
	}
	else {
		this.introAnim();
	}
}
ca.lesite.services.Services.prototype.introAnim = function() {
	this._services.fadeIn(500);
}
ca.lesite.services.Services.prototype.onRemoveFinished = null;
ca.lesite.services.Services.prototype.onSectionLoaded = function() {
	this._isLoaded = true;
	ca.lesite.Body.configureTabs();
	{
		Cufon.replace(".ronnia",{ fontFamily : "ronnia"});
	}
	this.introAnim();
}
ca.lesite.services.Services.prototype.remove = function() {
	this._services.fadeOut(300,this.onRemoveFinished);
}
ca.lesite.services.Services.prototype.__class__ = ca.lesite.services.Services;
js.fx.TransitionParam = { __ename__ : ["js","fx","TransitionParam"], __constructs__ : ["In","Out","InOut"] }
js.fx.TransitionParam.In = ["In",0];
js.fx.TransitionParam.In.toString = $estr;
js.fx.TransitionParam.In.__enum__ = js.fx.TransitionParam;
js.fx.TransitionParam.InOut = ["InOut",2];
js.fx.TransitionParam.InOut.toString = $estr;
js.fx.TransitionParam.InOut.__enum__ = js.fx.TransitionParam;
js.fx.TransitionParam.Out = ["Out",1];
js.fx.TransitionParam.Out.toString = $estr;
js.fx.TransitionParam.Out.__enum__ = js.fx.TransitionParam;
if(!ca.lesite.home) ca.lesite.home = {}
ca.lesite.home.Home = function(p) { if( p === $_ ) return; {
	this._home = new JQuery("#home");
	var homeDivItems = js.Lib.document.getElementById("home").childNodes;
	var homeItem;
	var homeItemAnim;
	this._items = [];
	this._itemsAnim = [];
	{
		var _g1 = 0, _g = homeDivItems.length;
		while(_g1 < _g) {
			var i = _g1++;
			if(homeDivItems[i].className == "ca.lesite.home.HomeItem homeItem") {
				homeItem = new ca.lesite.home.HomeItem();
				homeItem.onOpen = $closure(this,"onItemOpen");
				homeItem.index = Std.string(i);
				Distill.instance.bind(homeItem,homeDivItems[i],homeItem.index);
				homeDivItems[i].className = ("ca.lesite.home.HomeItem" + homeItem.index) + " homeItem";
				homeItemAnim = new JQuery(homeDivItems[i]);
				homeItemAnim.hide();
				this._items.push(homeItem);
				this._itemsAnim.push(homeItemAnim);
			}
		}
	}
	var imgItems = js.Lib.document.getElementById("home").getElementsByTagName("img");
	var img;
	this._imgs = [];
	{
		var _g1 = 0, _g = imgItems.length;
		while(_g1 < _g) {
			var i = _g1++;
			if(imgItems[i].className == "ca.lesite.home.HomeItemImage") {
				img = new ca.lesite.home.HomeItemImage();
				Distill.instance.bind(img,imgItems[i],Std.string(i));
				imgItems[i].className = "ca.lesite.home.HomeItemImage" + Std.string(i);
				this._imgs.push(img);
			}
		}
	}
	var divItems = js.Lib.document.getElementById("home").getElementsByTagName("div");
	var description;
	this._descriptions = [];
	{
		var _g1 = 0, _g = divItems.length;
		while(_g1 < _g) {
			var i = _g1++;
			if(divItems[i].className == "ca.lesite.home.HomeItemDescription homeItemDescription") {
				description = new ca.lesite.home.HomeItemDescription();
				description.index = Std.string(i);
				Distill.instance.bind(description,divItems[i],Std.string(i));
				divItems[i].className = ("ca.lesite.home.HomeItemDescription" + Std.string(i)) + " homeItemDescription";
				this._descriptions.push(description);
			}
		}
	}
	{
		var _g1 = 0, _g = this._items.length;
		while(_g1 < _g) {
			var i = _g1++;
			this._items[i].setImg(this._imgs[i]);
			this._items[i].setDescription(this._descriptions[i]);
		}
	}
}}
ca.lesite.home.Home.__name__ = ["ca","lesite","home","Home"];
ca.lesite.home.Home.prototype._descriptions = null;
ca.lesite.home.Home.prototype._home = null;
ca.lesite.home.Home.prototype._imgs = null;
ca.lesite.home.Home.prototype._items = null;
ca.lesite.home.Home.prototype._itemsAnim = null;
ca.lesite.home.Home.prototype.insert = function() {
	var item;
	var lineBR = 0;
	{
		var _g1 = 0, _g = this._itemsAnim.length;
		while(_g1 < _g) {
			var i = _g1++;
			if(i % 4 == 0 && i != 0) lineBR += 300;
			item = this._itemsAnim[i];
			item.delay((Math.floor(100 * i) + lineBR) + 150).slideDown(300,"easeOutCubic");
		}
	}
	this._home.fadeIn(500);
}
ca.lesite.home.Home.prototype.onItemOpen = function(index) {
	var _g1 = 0, _g = this._items.length;
	while(_g1 < _g) {
		var i = _g1++;
		if(this._items[i].index != index) {
			this._items[i].closeItem();
		}
	}
}
ca.lesite.home.Home.prototype.onRemoveFinished = null;
ca.lesite.home.Home.prototype.remove = function() {
	this._home.fadeOut(300,this.onRemoveFinished);
}
ca.lesite.home.Home.prototype.__class__ = ca.lesite.home.Home;
ca.lesite.Controller = function(p) { if( p === $_ ) return; {
	null;
}}
ca.lesite.Controller.__name__ = ["ca","lesite","Controller"];
ca.lesite.Controller.getInstance = function() {
	if(ca.lesite.Controller._instance == null) {
		ca.lesite.Controller._instance = new ca.lesite.Controller();
	}
	return ca.lesite.Controller._instance;
}
ca.lesite.Controller.prototype._data = null;
ca.lesite.Controller.prototype._sections = null;
ca.lesite.Controller.prototype.onChangeSection = function(id) {
	this._sections.get(id).remove();
}
ca.lesite.Controller.prototype.onRemoveFinished = function() {
	this._sections.get(this._data.getActualSection()).insert();
}
ca.lesite.Controller.prototype.registerData = function(data) {
	this._data = data;
	this._data.onChangeSection = $closure(this,"onChangeSection");
}
ca.lesite.Controller.prototype.registerSections = function(home,about,services,contact) {
	this._sections = new Hash();
	this._sections.set("home",home);
	this._sections.set("About",about);
	this._sections.set("Services",services);
	this._sections.set("Contact us",contact);
	home.onRemoveFinished = $closure(this,"onRemoveFinished");
	about.onRemoveFinished = $closure(this,"onRemoveFinished");
	services.onRemoveFinished = $closure(this,"onRemoveFinished");
	contact.onRemoveFinished = $closure(this,"onRemoveFinished");
}
ca.lesite.Controller.prototype.startSite = function() {
	this._data.updateStartSection();
	if(this._data.getSWFAddress().getActualSection() != "") {
		this._data.changeSection(this._data.getSWFAddress().getActualSection());
	}
	else {
		var home = this._sections.get("home");
		haxe.Timer.delay($closure(home,"insert"),500);
	}
}
ca.lesite.Controller.prototype.__class__ = ca.lesite.Controller;
StringBuf = function(p) { if( p === $_ ) return; {
	this.b = new Array();
}}
StringBuf.__name__ = ["StringBuf"];
StringBuf.prototype.add = function(x) {
	this.b[this.b.length] = x;
}
StringBuf.prototype.addChar = function(c) {
	this.b[this.b.length] = String.fromCharCode(c);
}
StringBuf.prototype.addSub = function(s,pos,len) {
	this.b[this.b.length] = s.substr(pos,len);
}
StringBuf.prototype.b = null;
StringBuf.prototype.toString = function() {
	return this.b.join("");
}
StringBuf.prototype.__class__ = StringBuf;
ca.lesite.home.HomeItemDescriptionText = function(p) { if( p === $_ ) return; {
	null;
}}
ca.lesite.home.HomeItemDescriptionText.__name__ = ["ca","lesite","home","HomeItemDescriptionText"];
ca.lesite.home.HomeItemDescriptionText.prototype.click = function(e) {
	this.onClick(e);
}
ca.lesite.home.HomeItemDescriptionText.prototype.domNode = null;
ca.lesite.home.HomeItemDescriptionText.prototype.mouseout = function(e) {
	this.onOut(e);
}
ca.lesite.home.HomeItemDescriptionText.prototype.mouseover = function(e) {
	this.onOver(e);
}
ca.lesite.home.HomeItemDescriptionText.prototype.onClick = null;
ca.lesite.home.HomeItemDescriptionText.prototype.onOut = null;
ca.lesite.home.HomeItemDescriptionText.prototype.onOver = null;
ca.lesite.home.HomeItemDescriptionText.prototype.__class__ = ca.lesite.home.HomeItemDescriptionText;
ca.lesite.SWFAddressConnector = function(p) { if( p === $_ ) return; {
	SWFAddress.addEventListener(SWFAddressEvent.CHANGE,$closure(this,"handleChange"));
}}
ca.lesite.SWFAddressConnector.__name__ = ["ca","lesite","SWFAddressConnector"];
ca.lesite.SWFAddressConnector.prototype.actualSection = null;
ca.lesite.SWFAddressConnector.prototype.getActualSection = function() {
	var return_str = "";
	{
		if(SWFAddress.getPathNames().length > 0) {
			return_str = SWFAddress.getPathNames()[0];
		}
		else null;
	}
	return return_str;
}
ca.lesite.SWFAddressConnector.prototype.handleChange = function(e) {
	var paths = e.pathNames;
	var sectionId = paths[0];
	try {
		if(paths.length > 0) {
			this.onSectionChange(sectionId);
		}
		else {
			this.onSectionChange("home");
		}
	}
	catch( $e3 ) {
		{
			var err = $e3;
			{
				this.onSectionChange("home");
			}
		}
	}
}
ca.lesite.SWFAddressConnector.prototype.onInit = null;
ca.lesite.SWFAddressConnector.prototype.onSectionChange = null;
ca.lesite.SWFAddressConnector.prototype.updateTitle = function(id,str) {
	if(str == "") {
		SWFAddress.setValue("");
		SWFAddress.setTitle("LeSite");
	}
	else {
		SWFAddress.setValue(id);
		SWFAddress.setTitle(("LeSite" + " / ") + ((str != "/"?str:"")));
	}
}
ca.lesite.SWFAddressConnector.prototype.__class__ = ca.lesite.SWFAddressConnector;
js.Lib = function() { }
js.Lib.__name__ = ["js","Lib"];
js.Lib.isIE = null;
js.Lib.isOpera = null;
js.Lib.document = null;
js.Lib.window = null;
js.Lib.alert = function(v) {
	alert(js.Boot.__string_rec(v,""));
}
js.Lib.eval = function(code) {
	return eval(code);
}
js.Lib.setErrorHandler = function(f) {
	js.Lib.onerror = f;
}
js.Lib.prototype.__class__ = js.Lib;
Type = function() { }
Type.__name__ = ["Type"];
Type.getClass = function(o) {
	if(o == null) return null;
	if(o.__enum__ != null) return null;
	return o.__class__;
}
Type.getEnum = function(o) {
	if(o == null) return null;
	return o.__enum__;
}
Type.getSuperClass = function(c) {
	return c.__super__;
}
Type.getClassName = function(c) {
	if(c == null) return null;
	var a = c.__name__;
	return a.join(".");
}
Type.getEnumName = function(e) {
	var a = e.__ename__;
	return a.join(".");
}
Type.resolveClass = function(name) {
	var cl;
	try {
		cl = eval(name);
	}
	catch( $e4 ) {
		{
			var e = $e4;
			{
				cl = null;
			}
		}
	}
	if(cl == null || cl.__name__ == null) return null;
	return cl;
}
Type.resolveEnum = function(name) {
	var e;
	try {
		e = eval(name);
	}
	catch( $e5 ) {
		{
			var err = $e5;
			{
				e = null;
			}
		}
	}
	if(e == null || e.__ename__ == null) return null;
	return e;
}
Type.createInstance = function(cl,args) {
	if(args.length <= 3) return new cl(args[0],args[1],args[2]);
	if(args.length > 8) throw "Too many arguments";
	return new cl(args[0],args[1],args[2],args[3],args[4],args[5],args[6],args[7]);
}
Type.createEmptyInstance = function(cl) {
	return new cl($_);
}
Type.createEnum = function(e,constr,params) {
	var f = Reflect.field(e,constr);
	if(f == null) throw "No such constructor " + constr;
	if(Reflect.isFunction(f)) {
		if(params == null) throw ("Constructor " + constr) + " need parameters";
		return f.apply(e,params);
	}
	if(params != null && params.length != 0) throw ("Constructor " + constr) + " does not need parameters";
	return f;
}
Type.createEnumIndex = function(e,index,params) {
	var c = Type.getEnumConstructs(e)[index];
	if(c == null) throw index + " is not a valid enum constructor index";
	return Type.createEnum(e,c,params);
}
Type.getInstanceFields = function(c) {
	var a = Reflect.fields(c.prototype);
	a.remove("__class__");
	return a;
}
Type.getClassFields = function(c) {
	var a = Reflect.fields(c);
	a.remove("__name__");
	a.remove("__interfaces__");
	a.remove("__super__");
	a.remove("prototype");
	return a;
}
Type.getEnumConstructs = function(e) {
	return e.__constructs__;
}
Type["typeof"] = function(v) {
	switch(typeof(v)) {
	case "boolean":{
		return ValueType.TBool;
	}break;
	case "string":{
		return ValueType.TClass(String);
	}break;
	case "number":{
		if(Math.ceil(v) == v % 2147483648.0) return ValueType.TInt;
		return ValueType.TFloat;
	}break;
	case "object":{
		if(v == null) return ValueType.TNull;
		var e = v.__enum__;
		if(e != null) return ValueType.TEnum(e);
		var c = v.__class__;
		if(c != null) return ValueType.TClass(c);
		return ValueType.TObject;
	}break;
	case "function":{
		if(v.__name__ != null) return ValueType.TObject;
		return ValueType.TFunction;
	}break;
	case "undefined":{
		return ValueType.TNull;
	}break;
	default:{
		return ValueType.TUnknown;
	}break;
	}
}
Type.enumEq = function(a,b) {
	if(a == b) return true;
	try {
		if(a[0] != b[0]) return false;
		{
			var _g1 = 2, _g = a.length;
			while(_g1 < _g) {
				var i = _g1++;
				if(!Type.enumEq(a[i],b[i])) return false;
			}
		}
		var e = a.__enum__;
		if(e != b.__enum__ || e == null) return false;
	}
	catch( $e6 ) {
		{
			var e = $e6;
			{
				return false;
			}
		}
	}
	return true;
}
Type.enumConstructor = function(e) {
	return e[0];
}
Type.enumParameters = function(e) {
	return e.slice(2);
}
Type.enumIndex = function(e) {
	return e[1];
}
Type.prototype.__class__ = Type;
Distill = function(p) { if( p === $_ ) return; {
	null;
}}
Distill.__name__ = ["Distill"];
Distill.instance = null;
Distill.getInstance = function() {
	return Distill.instance;
}
Distill.prototype.bind = function(obj,el,append) {
	this.setElement(obj,append);
	obj.domNode = el;
	this.triggerOnLoad([obj]);
}
Distill.prototype.dispatcher = function(ev,d) {
	var target;
	if(js.Lib.isIE) {
		target = ev.srcElement;
	}
	else {
		target = ev.target;
	}
	var names = target.className.split(" ");
	{
		var _g1 = 0, _g = this.numEls;
		while(_g1 < _g) {
			var i = _g1++;
			{
				var _g2 = 0;
				while(_g2 < names.length) {
					var name = names[_g2];
					++_g2;
					if(this.klasses[i] == name) {
						if(this.elements[i][ev.type]) {
							ev.manager = d;
							this.elements[i][ev.type](ev);
						}
					}
				}
			}
		}
	}
}
Distill.prototype.elements = null;
Distill.prototype.klasses = null;
Distill.prototype.numEls = null;
Distill.prototype.query = function(arg) {
	var matches = [];
	if(this.elements != null) {
		var _g = 0, _g1 = this.elements;
		while(_g < _g1.length) {
			var o = _g1[_g];
			++_g;
			var names = o.domNode.className.split(" ");
			{
				var _g2 = 0;
				while(_g2 < names.length) {
					var name = names[_g2];
					++_g2;
					if(name == arg) matches.push(o);
				}
			}
		}
	}
	return matches;
}
Distill.prototype.setElement = function(o,append) {
	if(append == null) append = "";
	this.klasses.push(Type.getClassName(Type.getClass(o)) + append);
	this.elements.push(o);
	++this.numEls;
}
Distill.prototype.setup = function(hxTypes) {
	Distill.instance = this;
	this.elements = [];
	this.klasses = [];
	this.numEls = 0;
	{
		if(hxTypes.length) {
			{
				var _g = 0;
				while(_g < hxTypes.length) {
					var o = hxTypes[_g];
					++_g;
					this.setElement(o);
				}
			}
			this.triggerOnLoad(hxTypes);
		}
		{
			var _g = 0, _g1 = ["onscroll","onresize","onmouseup","onmouseover","onmouseout","onmousemove","onmousedown","onkeyup","onkeypress","onkeydown","onfocus","ondblclick","onclick","onblur","postcreate"];
			while(_g < _g1.length) {
				var et = _g1[_g];
				++_g;
				var self = [this];
				if(js.Lib.isIE) {
					document.attachEvent(et,function(self) {
						return function(evt) {
							self[0].dispatcher(evt,self[0]);
						}
					}(self));
				}
				else {
					document.body[et] = function(self) {
						return function(evt) {
							self[0].dispatcher(evt,self[0]);
						}
					}(self);
				}
			}
		}
	}
}
Distill.prototype.triggerOnLoad = function(els) {
	{
		var _g = 0;
		while(_g < els.length) {
			var o = els[_g];
			++_g;
			if(o["load"]) {
				var e = { type : "load", target : o.domNode, manager : this}
				o["load"](e);
			}
		}
	}
}
Distill.prototype.__class__ = Distill;
js.fx.SlideKind = { __ename__ : ["js","fx","SlideKind"], __constructs__ : ["Vertical","VerticalBottom","Horizontal","HorizontalRight"] }
js.fx.SlideKind.Horizontal = ["Horizontal",2];
js.fx.SlideKind.Horizontal.toString = $estr;
js.fx.SlideKind.Horizontal.__enum__ = js.fx.SlideKind;
js.fx.SlideKind.HorizontalRight = ["HorizontalRight",3];
js.fx.SlideKind.HorizontalRight.toString = $estr;
js.fx.SlideKind.HorizontalRight.__enum__ = js.fx.SlideKind;
js.fx.SlideKind.Vertical = ["Vertical",0];
js.fx.SlideKind.Vertical.toString = $estr;
js.fx.SlideKind.Vertical.__enum__ = js.fx.SlideKind;
js.fx.SlideKind.VerticalBottom = ["VerticalBottom",1];
js.fx.SlideKind.VerticalBottom.toString = $estr;
js.fx.SlideKind.VerticalBottom.__enum__ = js.fx.SlideKind;
IntIter = function(min,max) { if( min === $_ ) return; {
	this.min = min;
	this.max = max;
}}
IntIter.__name__ = ["IntIter"];
IntIter.prototype.hasNext = function() {
	return this.min < this.max;
}
IntIter.prototype.max = null;
IntIter.prototype.min = null;
IntIter.prototype.next = function() {
	return this.min++;
}
IntIter.prototype.__class__ = IntIter;
ca.lesite.home.HomeItem = function(p) { if( p === $_ ) return; {
	null;
}}
ca.lesite.home.HomeItem.__name__ = ["ca","lesite","home","HomeItem"];
ca.lesite.home.HomeItem.prototype._description = null;
ca.lesite.home.HomeItem.prototype._descriptionDiv = null;
ca.lesite.home.HomeItem.prototype._image = null;
ca.lesite.home.HomeItem.prototype._isOver = null;
ca.lesite.home.HomeItem.prototype._slideAnim = null;
ca.lesite.home.HomeItem.prototype.click = function(e) {
	null;
}
ca.lesite.home.HomeItem.prototype.closeItem = function() {
	if(!this._isOver) return;
	this._isOver = false;
	this._slideAnim.toggle();
}
ca.lesite.home.HomeItem.prototype.domNode = null;
ca.lesite.home.HomeItem.prototype.hitTest = function(x,y) {
	var node = this.domNode;
	var xPos;
	var yPos;
	var widthPos;
	var heightPos;
	var scrollY;
	var scrollX;
	{
		if(js.Lib.isIE) {
			var ieObj = this.domNode.getBoundingClientRect();
			xPos = ieObj.left;
			yPos = ieObj.top;
			widthPos = ieObj.right;
			heightPos = ieObj.bottom;
			scrollX = document.body.scrollLeft;
			scrollY = document.body.scrollTop;
		}
		else {
			xPos = node.offsetLeft;
			yPos = node.offsetTop;
			widthPos = node.offsetLeft + node.clientWidth;
			heightPos = node.offsetTop + node.clientHeight;
			scrollX = window.pageXOffset;
			scrollY = window.pageYOffset;
		}
	}
	if(x + scrollX < xPos) return false;
	if(y + scrollY < yPos) return false;
	if(x + scrollX > widthPos) return false;
	if(y + scrollY > heightPos) return false;
	return true;
}
ca.lesite.home.HomeItem.prototype.index = null;
ca.lesite.home.HomeItem.prototype.load = function() {
	this._descriptionDiv = this.domNode.getElementsByTagName("div")[0];
	this._descriptionDiv.style.display = "block";
	this._slideAnim = new js.fx.Slide(this._descriptionDiv,js.fx.SlideKind.Vertical);
	this._slideAnim.duration = 600;
	this._slideAnim.setTransition(js.fx.Transition.Cubic(js.fx.TransitionParam.Out));
	this._slideAnim.hide();
}
ca.lesite.home.HomeItem.prototype.mouseout = function(e) {
	this.out(e.clientX,e.clientY);
}
ca.lesite.home.HomeItem.prototype.mouseover = function(e) {
	this.over(e.clientX,e.clientY);
}
ca.lesite.home.HomeItem.prototype.onOpen = null;
ca.lesite.home.HomeItem.prototype.openItem = function() {
	if(this._isOver) return;
	this._isOver = true;
	this._slideAnim.toggle();
	this.onOpen(this.index);
}
ca.lesite.home.HomeItem.prototype.out = function(x,y) {
	if(this.hitTest(x,y)) return;
	this.closeItem();
}
ca.lesite.home.HomeItem.prototype.over = function(x,y) {
	if(!this.hitTest(x,y)) return;
	this.openItem();
}
ca.lesite.home.HomeItem.prototype.setDescription = function(description) {
	this._description = description;
	this._description.onOver = $closure(this,"mouseover");
	this._description.onOut = $closure(this,"mouseout");
	this._description.onClick = $closure(this,"click");
}
ca.lesite.home.HomeItem.prototype.setImg = function(image) {
	this._image = image;
	this._image.onOver = $closure(this,"mouseover");
	this._image.onOut = $closure(this,"mouseout");
	this._image.onClick = $closure(this,"click");
}
ca.lesite.home.HomeItem.prototype.__class__ = ca.lesite.home.HomeItem;
if(typeof haxe=='undefined') haxe = {}
haxe.Timer = function(time_ms) { if( time_ms === $_ ) return; {
	this.id = haxe.Timer.arr.length;
	haxe.Timer.arr[this.id] = this;
	this.timerId = window.setInterval(("haxe.Timer.arr[" + this.id) + "].run();",time_ms);
}}
haxe.Timer.__name__ = ["haxe","Timer"];
haxe.Timer.delay = function(f,time_ms) {
	var t = new haxe.Timer(time_ms);
	t.run = function() {
		t.stop();
		f();
	}
	return t;
}
haxe.Timer.stamp = function() {
	return Date.now().getTime() / 1000;
}
haxe.Timer.prototype.id = null;
haxe.Timer.prototype.run = function() {
	null;
}
haxe.Timer.prototype.stop = function() {
	if(this.id == null) return;
	window.clearInterval(this.timerId);
	haxe.Timer.arr[this.id] = null;
	if(this.id > 100 && this.id == haxe.Timer.arr.length - 1) {
		var p = this.id - 1;
		while(p >= 0 && haxe.Timer.arr[p] == null) p--;
		haxe.Timer.arr = haxe.Timer.arr.slice(0,p + 1);
	}
	this.id = null;
}
haxe.Timer.prototype.timerId = null;
haxe.Timer.prototype.__class__ = haxe.Timer;
ca.lesite.home.HomeItemDescription = function(p) { if( p === $_ ) return; {
	null;
}}
ca.lesite.home.HomeItemDescription.__name__ = ["ca","lesite","home","HomeItemDescription"];
ca.lesite.home.HomeItemDescription.prototype._texts = null;
ca.lesite.home.HomeItemDescription.prototype.click = function(e) {
	this.onClick(e);
}
ca.lesite.home.HomeItemDescription.prototype.domNode = null;
ca.lesite.home.HomeItemDescription.prototype.index = null;
ca.lesite.home.HomeItemDescription.prototype.load = function() {
	var divs = this.domNode.childNodes;
	var text;
	var prevClassName;
	this._texts = [];
	{
		var _g1 = 0, _g = divs.length;
		while(_g1 < _g) {
			var i = _g1++;
			text = new ca.lesite.home.HomeItemDescriptionText();
			text.onOver = $closure(this,"mouseover");
			text.onOut = $closure(this,"mouseout");
			text.onClick = $closure(this,"click");
			prevClassName = divs[i].className;
			divs[i].className = "ca.lesite.home.HomeItemDescriptionText " + prevClassName;
			Distill.instance.bind(text,divs[i],this.index + Std.string(i));
			divs[i].className = ((("ca.lesite.home.HomeItemDescriptionText" + this.index) + Std.string(i)) + " ") + prevClassName;
			this._texts.push(text);
		}
	}
}
ca.lesite.home.HomeItemDescription.prototype.mouseout = function(e) {
	this.onOut(e);
}
ca.lesite.home.HomeItemDescription.prototype.mouseover = function(e) {
	this.onOver(e);
}
ca.lesite.home.HomeItemDescription.prototype.onClick = null;
ca.lesite.home.HomeItemDescription.prototype.onOut = null;
ca.lesite.home.HomeItemDescription.prototype.onOver = null;
ca.lesite.home.HomeItemDescription.prototype.__class__ = ca.lesite.home.HomeItemDescription;
Std = function() { }
Std.__name__ = ["Std"];
Std["is"] = function(v,t) {
	return js.Boot.__instanceof(v,t);
}
Std.string = function(s) {
	return js.Boot.__string_rec(s,"");
}
Std["int"] = function(x) {
	if(x < 0) return Math.ceil(x);
	return Math.floor(x);
}
Std.parseInt = function(x) {
	var v = parseInt(x);
	if(Math.isNaN(v)) return null;
	return v;
}
Std.parseFloat = function(x) {
	return parseFloat(x);
}
Std.random = function(x) {
	return Math.floor(Math.random() * x);
}
Std.prototype.__class__ = Std;
js.fx.Style = function() { }
js.fx.Style.__name__ = ["js","fx","Style"];
js.fx.Style.getDocumentStyles = function(selector) {
	var result = { }
	var found = false;
	{
		var _g1 = 0, _g = js.Lib.document.styleSheets.length;
		while(_g1 < _g) {
			var i = _g1++;
			var sheet = js.Lib.document.styleSheets[i];
			if(sheet.href != null && sheet.href.indexOf("://") != -1 && sheet.href.indexOf(js.Lib.document.domain) == -1) continue;
			var rules = (sheet.rules != null?sheet.rules:sheet.cssRules);
			{
				var _g3 = 0, _g2 = rules.length;
				while(_g3 < _g2) {
					var j = _g3++;
					var rule = rules[j];
					if(rule.style == null || rule.selectorText == null || rule.selectorText != selector) {
						continue;
					}
					found = true;
					if(js.Lib.isIE) {
						{
							var _g4 = 0, _g5 = Reflect.fields(rule.style);
							while(_g4 < _g5.length) {
								var f = _g5[_g4];
								++_g4;
								var value = Reflect.field(rule.style,f);
								if(value == null || value == "") continue;
								var value1 = js.fx.Style.parseStyle(value);
								if(value1 != null && value1 != "") {
									result[f] = value1;
								}
							}
						}
					}
					else {
						var _g5 = 0, _g4 = rule.style.length;
						while(_g5 < _g4) {
							var s = _g5++;
							var style = rule.style[s];
							var camel = js.fx.Style.camel(style);
							var value = Reflect.field(rule.style,camel);
							if(value != null && value != "") result[camel] = js.fx.Style.parseStyle(value);
						}
					}
				}
			}
		}
	}
	if(!found) return null;
	return result;
}
js.fx.Style.getStyles = function(e,template) {
	var getter = null;
	if(e.currentStyle != null) {
		getter = function(key) {
			return e.currentStyle[key];
		}
	}
	if(getter == null) {
		var window = (js.Lib.document.defaultView?js.Lib.document.defaultView:js.Lib.document.parentWindow);
		if(window != null && window.getComputedStyle != null) {
			var cs = window.getComputedStyle(e,null);
			if(cs != null) getter = function(key) {
				return cs.getPropertyValue(js.fx.Style.hyphen(key));
			}
		}
	}
	if(getter == null) {
		getter = function(key) {
			return Reflect.field(e,key);
		}
	}
	var result = { }
	{
		var _g = 0, _g1 = Reflect.fields(template);
		while(_g < _g1.length) {
			var f = _g1[_g];
			++_g;
			var currentValue = (f == "opacity"?Std.string(js.fx.Style.getOpacity(e)):getter(f));
			var expectedType = Reflect.field(template,f);
			if(Std["is"](expectedType,js.fx.RGB)) {
				var value = js.fx.RGB.parse(currentValue);
				if(value == null) value = new js.fx.RGB(0,0,0);
				result[f] = value;
				continue;
			}
			if(Std["is"](expectedType,js.fx.Unit)) {
				var value = js.fx.Unit.parse(currentValue);
				if(value == null) value = new js.fx.Unit((expectedType).kind,0);
				if(value.kind != expectedType.kind) throw (("Unit kind mismatch " + value) + " != ") + expectedType;
				result[f] = value;
				continue;
			}
			if(Std["is"](expectedType,String)) {
				result[f] = currentValue;
			}
			var type = Type["typeof"](expectedType);
			if(type == ValueType.TFloat || f == "opacity") {
				var value = Std.parseFloat(Std.string(currentValue)) + 0.000000001;
				if(value == null) value = 0.000000001;
				result[f] = value;
			}
			else if(type == ValueType.TInt) {
				var value = Std.parseInt(Std.string(currentValue));
				if(value == null) value = 0;
				result[f] = value;
			}
		}
	}
	return result;
}
js.fx.Style.setStyles = function(e,styles) {
	var _g = 0, _g1 = Reflect.fields(styles);
	while(_g < _g1.length) {
		var f = _g1[_g];
		++_g;
		js.fx.Style.setStyle(e,f,Reflect.field(styles,f));
	}
}
js.fx.Style.setStyle = function(e,property,value) {
	switch(property) {
	case "opacity":{
		js.fx.Style.setOpacity(e,value);
		return;
	}break;
	case "float":{
		property = (js.fx.Style.REQUIRES_FILTERS?"styleFloat":"cssFloat");
	}break;
	case "zIndex":{
		value = Std.string(value);
	}break;
	}
	e.style[property] = js.fx.Style.styleValueToString(value);
}
js.fx.Style.setOpacity = function(e,opacity) {
	e.style.visibility = (opacity == 0.0?"hidden":"visible");
	if(js.fx.Style.REQUIRES_FILTERS) e.style.filter = (opacity == 1.0?"":("alpha(opacity=" + opacity * 100) + ")");
	e.style.opacity = opacity;
	e.style._opacity = opacity;
}
js.fx.Style.getOpacity = function(element) {
	var v = element.style._opacity;
	if(v == null) {
		return (function($this) {
			var $r;
			switch(element.style.visibility) {
			case "visible":{
				$r = 1.0;
			}break;
			case "hidden":{
				$r = 0.0;
			}break;
			case "":{
				$r = (element.style.display == "none"?0.0:1.0);
			}break;
			default:{
				$r = null;
			}break;
			}
			return $r;
		}(this));
	}
	return v;
}
js.fx.Style.styleValueToString = function(v) {
	return (function($this) {
		var $r;
		var $e = (Type["typeof"](v));
		switch( $e[1] ) {
		case 6:
		var c = $e[2];
		{
			$r = Std.string(v);
		}break;
		case 1:
		{
			$r = v + "px";
		}break;
		case 2:
		{
			$r = Std.string(v);
		}break;
		case 0:
		{
			$r = "";
		}break;
		default:{
			$r = (function($this) {
				var $r;
				throw "Unsupported js.fx.Style value " + Type["typeof"](v);
				return $r;
			}($this));
		}break;
		}
		return $r;
	}(this));
}
js.fx.Style.parseStyle = function(s) {
	var rgb = js.fx.RGB.parse(s);
	if(rgb != null) return rgb;
	var unit = js.fx.Unit.parse(s);
	if(unit != null) return unit;
	return s;
}
js.fx.Style.camel = function(hyphen) {
	return new EReg("(-[a-z])","").customReplace(hyphen,function(reg) {
		return reg.matched(1).charAt(1).toUpperCase();
	});
}
js.fx.Style.hyphen = function(camel) {
	return new EReg("([A-Z])","").customReplace(camel,function(reg) {
		return "-" + reg.matched(1).toLowerCase();
	});
}
js.fx.Style.prototype.__class__ = js.fx.Style;
js.fx.RGB = function(r,g,b) { if( r === $_ ) return; {
	this.r = r;
	this.g = g;
	this.b = g;
}}
js.fx.RGB.__name__ = ["js","fx","RGB"];
js.fx.RGB.hexToInt = function(str) {
	str = str.toLowerCase();
	if(str.length == 0) return 0;
	if(str.length == 1) {
		var c = str.charCodeAt(0);
		var a = "a".charCodeAt(0);
		if(c >= a) return (10 + c) - a;
		var z = "0".charCodeAt(0);
		if(c >= z) return c - z;
	}
	if(str.length == 2) return 16 * js.fx.RGB.hexToInt(str.charAt(0)) + js.fx.RGB.hexToInt(str.charAt(1));
	return 0;
}
js.fx.RGB.parse = function(value) {
	var reg = new EReg("^#?([a-f0-9]{1,2})([a-f0-9]{1,2})([a-f0-9]{1,2})$","i");
	if(reg.match(value)) {
		var result = new js.fx.RGB(js.fx.RGB.hexToInt(reg.matched(1)),js.fx.RGB.hexToInt(reg.matched(2)),js.fx.RGB.hexToInt(reg.matched(3)));
		return result;
	}
	var reg1 = new EReg("rgb\\(\\s*(\\d+),\\s*(\\d+),\\s*(\\d+)\\s*\\)","");
	if(reg1.match(value)) return new js.fx.RGB(Std.parseInt(reg1.matched(1)),Std.parseInt(reg1.matched(2)),Std.parseInt(reg1.matched(3)));
	return null;
}
js.fx.RGB.prototype.b = null;
js.fx.RGB.prototype.g = null;
js.fx.RGB.prototype.r = null;
js.fx.RGB.prototype.toString = function() {
	return ((((("rgb(" + this.r) + ",") + this.g) + ",") + this.b) + ")";
}
js.fx.RGB.prototype.__class__ = js.fx.RGB;
js.fx.UnitKind = { __ename__ : ["js","fx","UnitKind"], __constructs__ : ["KEm","KPt","KPc","KPx"] }
js.fx.UnitKind.KEm = ["KEm",0];
js.fx.UnitKind.KEm.toString = $estr;
js.fx.UnitKind.KEm.__enum__ = js.fx.UnitKind;
js.fx.UnitKind.KPc = ["KPc",2];
js.fx.UnitKind.KPc.toString = $estr;
js.fx.UnitKind.KPc.__enum__ = js.fx.UnitKind;
js.fx.UnitKind.KPt = ["KPt",1];
js.fx.UnitKind.KPt.toString = $estr;
js.fx.UnitKind.KPt.__enum__ = js.fx.UnitKind;
js.fx.UnitKind.KPx = ["KPx",3];
js.fx.UnitKind.KPx.toString = $estr;
js.fx.UnitKind.KPx.__enum__ = js.fx.UnitKind;
js.fx.Unit = function(k,v) { if( k === $_ ) return; {
	this.kind = k;
	this.value = v;
	this.toString = (function($this) {
		var $r;
		var $e = (k);
		switch( $e[1] ) {
		case 0:
		{
			$r = $closure($this,"emToString");
		}break;
		case 1:
		{
			$r = $closure($this,"ptToString");
		}break;
		case 2:
		{
			$r = $closure($this,"pcToString");
		}break;
		case 3:
		{
			$r = $closure($this,"pxToString");
		}break;
		default:{
			$r = null;
		}break;
		}
		return $r;
	}(this));
}}
js.fx.Unit.__name__ = ["js","fx","Unit"];
js.fx.Unit.parse = function(value) {
	var reg = new EReg("^(\\-?[0-9.]+)(em|pt|%|px|)$","i");
	if(!reg.match(value)) return null;
	var val = Std.parseFloat(reg.matched(1));
	var kst = reg.matched(2);
	return (function($this) {
		var $r;
		switch(kst) {
		case "em":{
			$r = new js.fx.Unit(js.fx.UnitKind.KEm,val);
		}break;
		case "pt":{
			$r = new js.fx.Unit(js.fx.UnitKind.KPt,val);
		}break;
		case "px":{
			$r = new js.fx.Unit(js.fx.UnitKind.KPx,val);
		}break;
		case "%":{
			$r = new js.fx.Unit(js.fx.UnitKind.KPc,val);
		}break;
		default:{
			$r = new js.fx.Unit(js.fx.UnitKind.KPx,val);
		}break;
		}
		return $r;
	}(this));
}
js.fx.Unit.prototype.emToString = function() {
	return (Math.round(this.value * 10) / 10) + "em";
}
js.fx.Unit.prototype.kind = null;
js.fx.Unit.prototype.pcToString = function() {
	return (Math.round(this.value * 10) / 10) + "%";
}
js.fx.Unit.prototype.ptToString = function() {
	return (Math.round(this.value * 10) / 10) + "pt";
}
js.fx.Unit.prototype.pxToString = function() {
	return Math.round(this.value) + "px";
}
js.fx.Unit.prototype.toString = null;
js.fx.Unit.prototype.value = null;
js.fx.Unit.prototype.__class__ = js.fx.Unit;
js.fx.Delta = function() { }
js.fx.Delta.__name__ = ["js","fx","Delta"];
js.fx.Delta.getDeltaFunc = function(from,to) {
	return (Std["is"](a,js.fx.RGB)?$closure(js.fx.Delta,"rgb"):(Std["is"](a,js.fx.Unit)?$closure(js.fx.Delta,"unit"):(Std["is"](a,String)?$closure(js.fx.Delta,"string"):(Type["typeof"](a) == ValueType.TFloat?$closure(js.fx.Delta,"float"):(Type["typeof"](a) == ValueType.TInt?$closure(js.fx.Delta,"int"):$closure(js.fx.Delta,"unknown"))))));
}
js.fx.Delta.styles = function(from,to,delta) {
	var result = { }
	{
		var _g = 0, _g1 = Reflect.fields(from);
		while(_g < _g1.length) {
			var f = _g1[_g];
			++_g;
			result[f] = js.fx.Delta.any(Reflect.field(from,f),Reflect.field(to,f),delta);
		}
	}
	return result;
}
js.fx.Delta.unknown = function(from,to,delta) {
	return (delta < 0.5?from:to);
}
js.fx.Delta.any = function(a,b,delta) {
	return (Std["is"](a,js.fx.RGB)?$closure(js.fx.Delta,"rgb"):(Std["is"](a,js.fx.Unit)?$closure(js.fx.Delta,"unit"):(Std["is"](a,String)?$closure(js.fx.Delta,"string"):(Type["typeof"](a) == ValueType.TFloat?$closure(js.fx.Delta,"float"):(Type["typeof"](a) == ValueType.TInt?$closure(js.fx.Delta,"int"):$closure(js.fx.Delta,"unknown"))))))(a,b,delta);
}
js.fx.Delta.rgb = function(from,to,delta) {
	return new js.fx.RGB(js.fx.Delta["int"](from.r,to.r,delta),js.fx.Delta["int"](from.g,to.g,delta),js.fx.Delta["int"](from.b,to.b,delta));
}
js.fx.Delta.unit = function(from,to,delta) {
	return new js.fx.Unit(from.kind,js.fx.Delta["float"](from.value,to.value,delta));
}
js.fx.Delta.string = function(from,to,delta) {
	return (delta < 0.5?from:to);
}
js.fx.Delta["int"] = function(from,to,delta) {
	return Std["int"](Math.floor((to - from) * delta + from));
}
js.fx.Delta["float"] = function(from,to,delta) {
	return (to - from) * delta + from;
}
js.fx.Delta.prototype.__class__ = js.fx.Delta;
ValueType = { __ename__ : ["ValueType"], __constructs__ : ["TNull","TInt","TFloat","TBool","TObject","TFunction","TClass","TEnum","TUnknown"] }
ValueType.TBool = ["TBool",3];
ValueType.TBool.toString = $estr;
ValueType.TBool.__enum__ = ValueType;
ValueType.TClass = function(c) { var $x = ["TClass",6,c]; $x.__enum__ = ValueType; $x.toString = $estr; return $x; }
ValueType.TEnum = function(e) { var $x = ["TEnum",7,e]; $x.__enum__ = ValueType; $x.toString = $estr; return $x; }
ValueType.TFloat = ["TFloat",2];
ValueType.TFloat.toString = $estr;
ValueType.TFloat.__enum__ = ValueType;
ValueType.TFunction = ["TFunction",5];
ValueType.TFunction.toString = $estr;
ValueType.TFunction.__enum__ = ValueType;
ValueType.TInt = ["TInt",1];
ValueType.TInt.toString = $estr;
ValueType.TInt.__enum__ = ValueType;
ValueType.TNull = ["TNull",0];
ValueType.TNull.toString = $estr;
ValueType.TNull.__enum__ = ValueType;
ValueType.TObject = ["TObject",4];
ValueType.TObject.toString = $estr;
ValueType.TObject.__enum__ = ValueType;
ValueType.TUnknown = ["TUnknown",8];
ValueType.TUnknown.toString = $estr;
ValueType.TUnknown.__enum__ = ValueType;
js.fx.Transition = { __ename__ : ["js","fx","Transition"], __constructs__ : ["Linear","Quad","Cubic","Quart","Quint","Pow","Expo","Circ","Sine","Back","Bounce","Elastic"] }
js.fx.Transition.Back = function(p,pa) { var $x = ["Back",9,p,pa]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Bounce = function(p) { var $x = ["Bounce",10,p]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Circ = function(p) { var $x = ["Circ",7,p]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Cubic = function(p) { var $x = ["Cubic",2,p]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Elastic = function(p,pa) { var $x = ["Elastic",11,p,pa]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Expo = function(p) { var $x = ["Expo",6,p]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Linear = ["Linear",0];
js.fx.Transition.Linear.toString = $estr;
js.fx.Transition.Linear.__enum__ = js.fx.Transition;
js.fx.Transition.Pow = function(pa) { var $x = ["Pow",5,pa]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Quad = function(p) { var $x = ["Quad",1,p]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Quart = function(p) { var $x = ["Quart",3,p]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Quint = function(p) { var $x = ["Quint",4,p]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.fx.Transition.Sine = function(p) { var $x = ["Sine",8,p]; $x.__enum__ = js.fx.Transition; $x.toString = $estr; return $x; }
js.Boot = function() { }
js.Boot.__name__ = ["js","Boot"];
js.Boot.__unhtml = function(s) {
	return s.split("&").join("&amp;").split("<").join("&lt;").split(">").join("&gt;");
}
js.Boot.__trace = function(v,i) {
	var msg = (i != null?((i.fileName + ":") + i.lineNumber) + ": ":"");
	msg += js.Boot.__unhtml(js.Boot.__string_rec(v,"")) + "<br/>";
	var d = document.getElementById("haxe:trace");
	if(d == null) alert("No haxe:trace element defined\n" + msg);
	else d.innerHTML += msg;
}
js.Boot.__clear_trace = function() {
	var d = document.getElementById("haxe:trace");
	if(d != null) d.innerHTML = "";
	else null;
}
js.Boot.__closure = function(o,f) {
	var m = o[f];
	if(m == null) return null;
	var f1 = function() {
		return m.apply(o,arguments);
	}
	f1.scope = o;
	f1.method = m;
	return f1;
}
js.Boot.__string_rec = function(o,s) {
	if(o == null) return "null";
	if(s.length >= 5) return "<...>";
	var t = typeof(o);
	if(t == "function" && (o.__name__ != null || o.__ename__ != null)) t = "object";
	switch(t) {
	case "object":{
		if(o instanceof Array) {
			if(o.__enum__ != null) {
				if(o.length == 2) return o[0];
				var str = o[0] + "(";
				s += "\t";
				{
					var _g1 = 2, _g = o.length;
					while(_g1 < _g) {
						var i = _g1++;
						if(i != 2) str += "," + js.Boot.__string_rec(o[i],s);
						else str += js.Boot.__string_rec(o[i],s);
					}
				}
				return str + ")";
			}
			var l = o.length;
			var i;
			var str = "[";
			s += "\t";
			{
				var _g = 0;
				while(_g < l) {
					var i1 = _g++;
					str += ((i1 > 0?",":"")) + js.Boot.__string_rec(o[i1],s);
				}
			}
			str += "]";
			return str;
		}
		var tostr;
		try {
			tostr = o.toString;
		}
		catch( $e7 ) {
			{
				var e = $e7;
				{
					return "???";
				}
			}
		}
		if(tostr != null && tostr != Object.toString) {
			var s2 = o.toString();
			if(s2 != "[object Object]") return s2;
		}
		var k = null;
		var str = "{\n";
		s += "\t";
		var hasp = (o.hasOwnProperty != null);
		for( var k in o ) { ;
		if(hasp && !o.hasOwnProperty(k)) continue;
		if(k == "prototype" || k == "__class__" || k == "__super__" || k == "__interfaces__") continue;
		if(str.length != 2) str += ", \n";
		str += ((s + k) + " : ") + js.Boot.__string_rec(o[k],s);
		}
		s = s.substring(1);
		str += ("\n" + s) + "}";
		return str;
	}break;
	case "function":{
		return "<function>";
	}break;
	case "string":{
		return o;
	}break;
	default:{
		return String(o);
	}break;
	}
}
js.Boot.__interfLoop = function(cc,cl) {
	if(cc == null) return false;
	if(cc == cl) return true;
	var intf = cc.__interfaces__;
	if(intf != null) {
		var _g1 = 0, _g = intf.length;
		while(_g1 < _g) {
			var i = _g1++;
			var i1 = intf[i];
			if(i1 == cl || js.Boot.__interfLoop(i1,cl)) return true;
		}
	}
	return js.Boot.__interfLoop(cc.__super__,cl);
}
js.Boot.__instanceof = function(o,cl) {
	try {
		if(o instanceof cl) {
			if(cl == Array) return (o.__enum__ == null);
			return true;
		}
		if(js.Boot.__interfLoop(o.__class__,cl)) return true;
	}
	catch( $e8 ) {
		{
			var e = $e8;
			{
				if(cl == null) return false;
			}
		}
	}
	switch(cl) {
	case Int:{
		return Math.ceil(o%2147483648.0) === o;
	}break;
	case Float:{
		return typeof(o) == "number";
	}break;
	case Bool:{
		return o === true || o === false;
	}break;
	case String:{
		return typeof(o) == "string";
	}break;
	case Dynamic:{
		return true;
	}break;
	default:{
		if(o == null) return false;
		return o.__enum__ == cl || (cl == Class && o.__name__ != null) || (cl == Enum && o.__ename__ != null);
	}break;
	}
}
js.Boot.__init = function() {
	js.Lib.isIE = (typeof document!='undefined' && document.all != null && typeof window!='undefined' && window.opera == null);
	js.Lib.isOpera = (typeof window!='undefined' && window.opera != null);
	Array.prototype.copy = Array.prototype.slice;
	Array.prototype.insert = function(i,x) {
		this.splice(i,0,x);
	}
	Array.prototype.remove = (Array.prototype.indexOf?function(obj) {
		var idx = this.indexOf(obj);
		if(idx == -1) return false;
		this.splice(idx,1);
		return true;
	}:function(obj) {
		var i = 0;
		var l = this.length;
		while(i < l) {
			if(this[i] == obj) {
				this.splice(i,1);
				return true;
			}
			i++;
		}
		return false;
	});
	Array.prototype.iterator = function() {
		return { cur : 0, arr : this, hasNext : function() {
			return this.cur < this.arr.length;
		}, next : function() {
			return this.arr[this.cur++];
		}}
	}
	var cca = String.prototype.charCodeAt;
	String.prototype.cca = cca;
	String.prototype.charCodeAt = function(i) {
		var x = cca.call(this,i);
		if(isNaN(x)) return null;
		return x;
	}
	var oldsub = String.prototype.substr;
	String.prototype.substr = function(pos,len) {
		if(pos != null && pos != 0 && len != null && len < 0) return "";
		if(len == null) len = this.length;
		if(pos < 0) {
			pos = this.length + pos;
			if(pos < 0) pos = 0;
		}
		else if(len < 0) {
			len = (this.length + len) - pos;
		}
		return oldsub.apply(this,[pos,len]);
	}
	$closure = js.Boot.__closure;
}
js.Boot.prototype.__class__ = js.Boot;
EReg = function(r,opt) { if( r === $_ ) return; {
	opt = opt.split("u").join("");
	this.r = new RegExp(r,opt);
}}
EReg.__name__ = ["EReg"];
EReg.prototype.customReplace = function(s,f) {
	var buf = new StringBuf();
	while(true) {
		if(!this.match(s)) break;
		buf.b[buf.b.length] = this.matchedLeft();
		buf.b[buf.b.length] = f(this);
		s = this.matchedRight();
	}
	buf.b[buf.b.length] = s;
	return buf.b.join("");
}
EReg.prototype.match = function(s) {
	this.r.m = this.r.exec(s);
	this.r.s = s;
	this.r.l = RegExp.leftContext;
	this.r.r = RegExp.rightContext;
	return (this.r.m != null);
}
EReg.prototype.matched = function(n) {
	return (this.r.m != null && n >= 0 && n < this.r.m.length?this.r.m[n]:(function($this) {
		var $r;
		throw "EReg::matched";
		return $r;
	}(this)));
}
EReg.prototype.matchedLeft = function() {
	if(this.r.m == null) throw "No string matched";
	if(this.r.l == null) return this.r.s.substr(0,this.r.m.index);
	return this.r.l;
}
EReg.prototype.matchedPos = function() {
	if(this.r.m == null) throw "No string matched";
	return { pos : this.r.m.index, len : this.r.m[0].length}
}
EReg.prototype.matchedRight = function() {
	if(this.r.m == null) throw "No string matched";
	if(this.r.r == null) {
		var sz = this.r.m.index + this.r.m[0].length;
		return this.r.s.substr(sz,this.r.s.length - sz);
	}
	return this.r.r;
}
EReg.prototype.r = null;
EReg.prototype.replace = function(s,by) {
	return s.replace(this.r,by);
}
EReg.prototype.split = function(s) {
	var d = "#__delim__#";
	return s.replace(this.r,d).split(d);
}
EReg.prototype.__class__ = EReg;
ca.lesite.Body = function(p) { if( p === $_ ) return; {
	this._logo = new JQuery("#title");
	this._preloader = new JQuery("#loading");
	this._header = new JQuery("#header");
	this._footer = new JQuery("#footer");
	ca.lesite.Body.configureTabs();
	this._logo.click($closure(this,"onLogoClicked"));
}}
ca.lesite.Body.__name__ = ["ca","lesite","Body"];
ca.lesite.Body.configureTabs = function() {
	var tabContainers = $('div.tabs > div');
            tabContainers.hide().filter(':first').show();
            
            $('div.tabs ul.tabNavigation a').click(function () {
                    tabContainers.hide();
                    tabContainers.filter(this.hash).show();
                    $('div.tabs ul.tabNavigation a').removeClass('selected');
                    $(this).addClass('selected');
                    return false;
            }).filter(':first').click();;
}
ca.lesite.Body.prototype._footer = null;
ca.lesite.Body.prototype._header = null;
ca.lesite.Body.prototype._logo = null;
ca.lesite.Body.prototype._preloader = null;
ca.lesite.Body.prototype.introAnim = function() {
	this._preloader.fadeOut(300);
	this._header.delay(150).fadeIn(500);
	this._footer.delay(1650).fadeIn(400);
}
ca.lesite.Body.prototype.onLogoClicked = function() {
	ca.lesite.Data.getInstance().changeSection("home");
}
ca.lesite.Body.prototype.__class__ = ca.lesite.Body;
ca.lesite.Data = function(p) { if( p === $_ ) return; {
	this._actualSection = "home";
	this._swfAddress = new ca.lesite.SWFAddressConnector();
	this._swfAddress.onSectionChange = $closure(this,"onSWFAddressChange");
}}
ca.lesite.Data.__name__ = ["ca","lesite","Data"];
ca.lesite.Data.getInstance = function() {
	if(ca.lesite.Data._instance == null) {
		ca.lesite.Data._instance = new ca.lesite.Data();
	}
	return ca.lesite.Data._instance;
}
ca.lesite.Data.prototype._actualSection = null;
ca.lesite.Data.prototype._swfAddress = null;
ca.lesite.Data.prototype.actualSection = null;
ca.lesite.Data.prototype.changeSection = function(newSection) {
	if(newSection == "Blog") {
		js.Lib.window.location.replace("http://www.facebook.com/lesite.webagency");
		return;
	}
	this.onChangeSection(this._actualSection);
	this._actualSection = newSection;
	this._swfAddress.updateTitle(this._actualSection,(this._actualSection == "home"?"":this._actualSection));
}
ca.lesite.Data.prototype.getActualSection = function() {
	return this._actualSection;
}
ca.lesite.Data.prototype.getSWFAddress = function() {
	return this._swfAddress;
}
ca.lesite.Data.prototype.onChangeSection = null;
ca.lesite.Data.prototype.onSWFAddressChange = function(newSection) {
	this.changeSection(newSection);
}
ca.lesite.Data.prototype.swfaddress = null;
ca.lesite.Data.prototype.updateStartSection = function() {
	this._actualSection = (this._swfAddress.getActualSection() == ""?"home":this._swfAddress.getActualSection());
}
ca.lesite.Data.prototype.__class__ = ca.lesite.Data;
js.fx.TransitionFunctions = function() { }
js.fx.TransitionFunctions.__name__ = ["js","fx","TransitionFunctions"];
js.fx.TransitionFunctions.transitionParam = function(p,f) {
	return (function($this) {
		var $r;
		var $e = (p);
		switch( $e[1] ) {
		case 0:
		{
			$r = f;
		}break;
		case 1:
		{
			$r = function(pos) {
				return 1 - f(1 - pos);
			}
		}break;
		case 2:
		{
			$r = function(pos) {
				return (pos <= 0.5?f(2 * pos) / 2:(2 - f(2 * (1 - pos)) / 2));
			}
		}break;
		default:{
			$r = null;
		}break;
		}
		return $r;
	}(this));
}
js.fx.TransitionFunctions.get = function(t) {
	return (function($this) {
		var $r;
		var $e = (t);
		switch( $e[1] ) {
		case 0:
		{
			$r = $closure(js.fx.TransitionFunctions,"linear");
		}break;
		case 1:
		var p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,$closure(js.fx.TransitionFunctions,"quad"));
		}break;
		case 2:
		var p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,$closure(js.fx.TransitionFunctions,"cubic"));
		}break;
		case 3:
		var p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,$closure(js.fx.TransitionFunctions,"quart"));
		}break;
		case 4:
		var p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,$closure(js.fx.TransitionFunctions,"quint"));
		}break;
		case 5:
		var p = $e[2];
		{
			$r = function(f,a1) {
				return function(a2) {
					return f(a1,a2);
				}
			}($closure(js.fx.TransitionFunctions,"pow"),p);
		}break;
		case 6:
		var p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,$closure(js.fx.TransitionFunctions,"expo"));
		}break;
		case 7:
		var p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,$closure(js.fx.TransitionFunctions,"circ"));
		}break;
		case 8:
		var p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,$closure(js.fx.TransitionFunctions,"sine"));
		}break;
		case 9:
		var pa = $e[3], p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,function(f,a1) {
				return function(a2) {
					return f(a1,a2);
				}
			}($closure(js.fx.TransitionFunctions,"back"),pa));
		}break;
		case 10:
		var p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,$closure(js.fx.TransitionFunctions,"bounce"));
		}break;
		case 11:
		var pa = $e[3], p = $e[2];
		{
			$r = js.fx.TransitionFunctions.transitionParam(p,function(f,a1) {
				return function(a2) {
					return f(a1,a2);
				}
			}($closure(js.fx.TransitionFunctions,"elastic"),pa));
		}break;
		default:{
			$r = null;
		}break;
		}
		return $r;
	}(this));
}
js.fx.TransitionFunctions.linear = function(p) {
	return p;
}
js.fx.TransitionFunctions.pow = function(x,p) {
	if(x == null) x = 6.0;
	return Math.pow(p,x);
}
js.fx.TransitionFunctions.expo = function(p) {
	return Math.pow(2,8 * (p - 1));
}
js.fx.TransitionFunctions.circ = function(p) {
	return 1 - Math.sin(Math.acos(p));
}
js.fx.TransitionFunctions.sine = function(p) {
	return 1 - Math.sin(((1 - p) * Math.PI) / 2);
}
js.fx.TransitionFunctions.back = function(pa,p) {
	if(pa == null) pa = 1.618;
	return Math.pow(p,2) * ((pa + 1) * p - pa);
}
js.fx.TransitionFunctions.bounce = function(p) {
	var value = null;
	var a = 0.0;
	var b = 1.0;
	while(true) {
		if(p >= (7 - 4 * a) / 11) {
			value = -Math.pow(((11 - 6 * a) - 11 * p) / 4,2) + b * b;
			break;
		}
		a += b;
		b /= 2.0;
	}
	return value;
}
js.fx.TransitionFunctions.elastic = function(pa,p) {
	if(pa == null) pa = 1.0;
	return Math.pow(2,10 * --p) * Math.cos((((20 * p) * Math.PI) * pa) / 3);
}
js.fx.TransitionFunctions.quad = function(p) {
	return Math.pow(p,2);
}
js.fx.TransitionFunctions.cubic = function(p) {
	return Math.pow(p,3);
}
js.fx.TransitionFunctions.quart = function(p) {
	return Math.pow(p,4);
}
js.fx.TransitionFunctions.quint = function(p) {
	return Math.pow(p,5);
}
js.fx.TransitionFunctions.prototype.__class__ = js.fx.TransitionFunctions;
if(!ca.lesite.about) ca.lesite.about = {}
ca.lesite.about.About = function(p) { if( p === $_ ) return; {
	this._about = new JQuery("#about");
}}
ca.lesite.about.About.__name__ = ["ca","lesite","about","About"];
ca.lesite.about.About.prototype._about = null;
ca.lesite.about.About.prototype._isLoaded = null;
ca.lesite.about.About.prototype._tabs = null;
ca.lesite.about.About.prototype.insert = function() {
	if(!this._isLoaded) {
		this._about.load("aboutSection.html",$closure(this,"onSectionLoaded"));
	}
	else {
		this.introAnim();
	}
}
ca.lesite.about.About.prototype.introAnim = function() {
	this._about.fadeIn(500);
}
ca.lesite.about.About.prototype.onRemoveFinished = null;
ca.lesite.about.About.prototype.onSectionLoaded = function() {
	this._isLoaded = true;
	ca.lesite.Body.configureTabs();
	{
		Cufon.replace(".ronnia",{ fontFamily : "ronnia"});
	}
	this.introAnim();
}
ca.lesite.about.About.prototype.remove = function() {
	this._about.fadeOut(300,this.onRemoveFinished);
}
ca.lesite.about.About.prototype.__class__ = ca.lesite.about.About;
js.fx.Timer = function(p) { if( p === $_ ) return; {
	null;
}}
js.fx.Timer.__name__ = ["js","fx","Timer"];
js.fx.Timer.timeout = function(cb,delay) {
	var t = new js.fx.Timer();
	t.data = setTimeout(cb,delay);
	return t;
}
js.fx.Timer.periodical = function(cb,delay) {
	var t = new js.fx.Timer();
	t.data = setInterval(cb,delay);
	return t;
}
js.fx.Timer.clear = function(t) {
	clearTimeout(t.data);
	clearInterval(t.data);
	return null;
}
js.fx.Timer.prototype.data = null;
js.fx.Timer.prototype.__class__ = js.fx.Timer;
ca.lesite.home.HomeItemImage = function(p) { if( p === $_ ) return; {
	null;
}}
ca.lesite.home.HomeItemImage.__name__ = ["ca","lesite","home","HomeItemImage"];
ca.lesite.home.HomeItemImage.prototype.click = function(e) {
	this.onClick(e);
}
ca.lesite.home.HomeItemImage.prototype.domNode = null;
ca.lesite.home.HomeItemImage.prototype.mouseout = function(e) {
	this.onOut(e);
}
ca.lesite.home.HomeItemImage.prototype.mouseover = function(e) {
	this.onOver(e);
}
ca.lesite.home.HomeItemImage.prototype.onClick = null;
ca.lesite.home.HomeItemImage.prototype.onOut = null;
ca.lesite.home.HomeItemImage.prototype.onOver = null;
ca.lesite.home.HomeItemImage.prototype.__class__ = ca.lesite.home.HomeItemImage;
Hash = function(p) { if( p === $_ ) return; {
	this.h = {}
	if(this.h.__proto__ != null) {
		this.h.__proto__ = null;
		delete(this.h.__proto__);
	}
	else null;
}}
Hash.__name__ = ["Hash"];
Hash.prototype.exists = function(key) {
	try {
		key = "$" + key;
		return this.hasOwnProperty.call(this.h,key);
	}
	catch( $e9 ) {
		{
			var e = $e9;
			{
				
				for(var i in this.h)
					if( i == key ) return true;
			;
				return false;
			}
		}
	}
}
Hash.prototype.get = function(key) {
	return this.h["$" + key];
}
Hash.prototype.h = null;
Hash.prototype.iterator = function() {
	return { ref : this.h, it : this.keys(), hasNext : function() {
		return this.it.hasNext();
	}, next : function() {
		var i = this.it.next();
		return this.ref["$" + i];
	}}
}
Hash.prototype.keys = function() {
	var a = new Array();
	
			for(var i in this.h)
				a.push(i.substr(1));
		;
	return a.iterator();
}
Hash.prototype.remove = function(key) {
	if(!this.exists(key)) return false;
	delete(this.h["$" + key]);
	return true;
}
Hash.prototype.set = function(key,value) {
	this.h["$" + key] = value;
}
Hash.prototype.toString = function() {
	var s = new StringBuf();
	s.b[s.b.length] = "{";
	var it = this.keys();
	{ var $it10 = it;
	while( $it10.hasNext() ) { var i = $it10.next();
	{
		s.b[s.b.length] = i;
		s.b[s.b.length] = " => ";
		s.b[s.b.length] = Std.string(this.get(i));
		if(it.hasNext()) s.b[s.b.length] = ", ";
	}
	}}
	s.b[s.b.length] = "}";
	return s.b.join("");
}
Hash.prototype.__class__ = Hash;
Main = function(p) { if( p === $_ ) return; {
	this._timer = new haxe.Timer(100);
	this._timer.run = $closure(this,"waitDistillLoop");
}}
Main.__name__ = ["Main"];
Main.main = function() {
	Main.getInstance();
}
Main.getInstance = function() {
	if(Main._instance == null) {
		Main._instance = new Main();
	}
	return Main._instance;
}
Main.prototype._about = null;
Main.prototype._body = null;
Main.prototype._contact = null;
Main.prototype._controller = null;
Main.prototype._data = null;
Main.prototype._home = null;
Main.prototype._menu = null;
Main.prototype._services = null;
Main.prototype._timer = null;
Main.prototype.configureLogic = function() {
	this._data = ca.lesite.Data.getInstance();
	this._controller = ca.lesite.Controller.getInstance();
	this._controller.registerSections(this._home,this._about,this._services,this._contact);
	this._controller.registerData(this._data);
	this._controller.startSite();
}
Main.prototype.start = function() {
	this._body = new ca.lesite.Body();
	this._menu = new ca.lesite.menu.Menu();
	this._home = new ca.lesite.home.Home();
	this._about = new ca.lesite.about.About();
	this._services = new ca.lesite.services.Services();
	this._contact = new ca.lesite.contact.Contact();
	{
		JQuery.easing.def = "linear";
	}
	this._body.introAnim();
	this.configureLogic();
}
Main.prototype.waitDistillLoop = function() {
	if(Distill.instance != null) {
		this._timer.stop();
		this._timer = null;
		this.start();
	}
}
Main.prototype.__class__ = Main;
$Main = function() { }
$Main.__name__ = ["@Main"];
$Main.prototype.__class__ = $Main;
$_ = {}
js.Boot.__res = {}
js.Boot.__init();
{
	window.JQuery = jQuery;
}
{
	window.JQueryS = jQuery;
}
{
	js.Lib.document = document;
	js.Lib.window = window;
	onerror = function(msg,url,line) {
		var f = js.Lib.onerror;
		if( f == null )
			return false;
		return f(msg,[url+":"+line]);
	}
}
{
	{
		var cb = function() {
			var isIE = js.Lib.isIE;
			var els = (isIE?document.getElementsByTagName("*"):document.getElementsByName("hxType"));
			var widgets = [];
			var distill = new Distill();
			Distill.instance = distill;
			{
				var _g = 0;
				while(_g < els.length) {
					var el = els[_g];
					++_g;
					if(!isIE || el.name == "hxType") {
						var cl = Type.resolveClass(el.className);
						if(cl != null) {
							var inst = Type.createInstance(cl,[]);
							inst.domNode = el;
							el["obj"] = inst;
							widgets.push(inst);
						}
					}
				}
			}
			distill.setup(widgets);
		}
		if(window.onload != null) {
			var pre = window.onload;
			window.onload = function(e) {
				pre();
				cb();
			}
		}
		else {
			window.onload = cb;
		}
	}
}
{
	Date.now = function() {
		return new Date();
	}
	Date.fromTime = function(t) {
		var d = new Date();
		d["setTime"](t);
		return d;
	}
	Date.fromString = function(s) {
		switch(s.length) {
		case 8:{
			var k = s.split(":");
			var d = new Date();
			d["setTime"](0);
			d["setUTCHours"](k[0]);
			d["setUTCMinutes"](k[1]);
			d["setUTCSeconds"](k[2]);
			return d;
		}break;
		case 10:{
			var k = s.split("-");
			return new Date(k[0],k[1] - 1,k[2],0,0,0);
		}break;
		case 19:{
			var k = s.split(" ");
			var y = k[0].split("-");
			var t = k[1].split(":");
			return new Date(y[0],y[1] - 1,y[2],t[0],t[1],t[2]);
		}break;
		default:{
			throw "Invalid date format : " + s;
		}break;
		}
	}
	Date.prototype["toString"] = function() {
		var date = this;
		var m = date.getMonth() + 1;
		var d = date.getDate();
		var h = date.getHours();
		var mi = date.getMinutes();
		var s = date.getSeconds();
		return (((((((((date.getFullYear() + "-") + ((m < 10?"0" + m:"" + m))) + "-") + ((d < 10?"0" + d:"" + d))) + " ") + ((h < 10?"0" + h:"" + h))) + ":") + ((mi < 10?"0" + mi:"" + mi))) + ":") + ((s < 10?"0" + s:"" + s));
	}
	Date.prototype.__class__ = Date;
	Date.__name__ = ["Date"];
}
{
	String.prototype.__class__ = String;
	String.__name__ = ["String"];
	Array.prototype.__class__ = Array;
	Array.__name__ = ["Array"];
	Int = { __name__ : ["Int"]}
	Dynamic = { __name__ : ["Dynamic"]}
	Float = Number;
	Float.__name__ = ["Float"];
	Bool = { __ename__ : ["Bool"]}
	Class = { __name__ : ["Class"]}
	Enum = { }
	Void = { __ename__ : ["Void"]}
}
{
	Math.NaN = Number["NaN"];
	Math.NEGATIVE_INFINITY = Number["NEGATIVE_INFINITY"];
	Math.POSITIVE_INFINITY = Number["POSITIVE_INFINITY"];
	Math.isFinite = function(i) {
		return isFinite(i);
	}
	Math.isNaN = function(i) {
		return isNaN(i);
	}
	Math.__name__ = ["Math"];
}
{
	js["XMLHttpRequest"] = (window.XMLHttpRequest?XMLHttpRequest:(window.ActiveXObject?function() {
		try {
			return new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch( $e11 ) {
			{
				var e = $e11;
				{
					try {
						return new ActiveXObject("Microsoft.XMLHTTP");
					}
					catch( $e12 ) {
						{
							var e1 = $e12;
							{
								throw "Unable to create XMLHttpRequest object.";
							}
						}
					}
				}
			}
		}
	}:(function($this) {
		var $r;
		throw "Unable to create XMLHttpRequest object.";
		return $r;
	}(this))));
}
ca.lesite.Controller._instance = null;
js.Lib.onerror = null;
Distill.evTypes = ["onscroll","onresize","onmouseup","onmouseover","onmouseout","onmousemove","onmousedown","onkeyup","onkeypress","onkeydown","onfocus","ondblclick","onclick","onblur","postcreate"];
haxe.Timer.arr = new Array();
js.fx.Style.REQUIRES_FILTERS = js.Lib.window.ActiveXObject != null;
ca.lesite.Data._instance = null;
Main._instance = null;
$Main.init = Main.main();
