var HeaderSection1 =
{
	init: function()
	{
		var HeaderSection1s = Core.getElementsByClass("HeaderSection1b");

		for (var i = 0; i < HeaderSection1s.length; i++)
		{
			Core.addEventListener(HeaderSection1s[i], "mouseover", HeaderSection1.mouseoverListener);
			Core.addEventListener(HeaderSection1s[i], "mouseout", HeaderSection1.mouseoutListener);
		}
	},
	
	mouseoverListener: function(event)
	{
		var element = this;
		if (Core.hasClass(element.firstChild, "RedButton"))
		{
			Core.removeClass(element.firstChild, "RedButton");
			Core.addClass(element.firstChild, "RedButton_X");
			
			Core.removeClass(element.childNodes[1], "YellowButton");
			Core.addClass(element.childNodes[1], "YellowButton_X");
			
			Core.removeClass(element.lastChild, "GreenButton");
			Core.addClass(element.lastChild, "GreenButton_X");
		return;
		}
	},
	
	mouseoutListener: function(event)
	{
		var element = this;
		if (Core.hasClass(element.firstChild, "RedButton_X"))
		{
			Core.removeClass(element.firstChild, "RedButton_X");
			Core.addClass(element.firstChild, "RedButton");
			
			Core.removeClass(element.childNodes[1], "YellowButton_X");
			Core.addClass(element.childNodes[1], "YellowButton");
			
			Core.removeClass(element.lastChild, "GreenButton_X");
			Core.addClass(element.lastChild, "GreenButton");
		return;
		}
	}
};

var ButtonPressed =
{
	init: function()
	{
		var ButtonPresseds = Core.getElementsByClass("RedButton");

		for (var i = 0; i < ButtonPresseds.length; i++)
		{
			Core.addEventListener(ButtonPresseds[i], "mousedown", ButtonPressed.mousedownListener);
			Core.addEventListener(ButtonPresseds[i], "mouseup", ButtonPressed.mouseupListener);
		}
		
		var ButtonPresseds = Core.getElementsByClass("YellowButton");

		for (var i = 0; i < ButtonPresseds.length; i++)
		{
			Core.addEventListener(ButtonPresseds[i], "mousedown", ButtonPressed.mousedownListener);
			Core.addEventListener(ButtonPresseds[i], "mouseup", ButtonPressed.mouseupListener);
		}
		
		var ButtonPresseds = Core.getElementsByClass("GreenButton");

		for (var i = 0; i < ButtonPresseds.length; i++)
		{
			Core.addEventListener(ButtonPresseds[i], "mousedown", ButtonPressed.mousedownListener);
			Core.addEventListener(ButtonPresseds[i], "mouseup", ButtonPressed.mouseupListener);
		}
	},
	
	mousedownListener: function(event)
	{
		var element = this;
		if (Core.hasClass(element, "RedButton_X"))
		{
			Core.removeClass(element, "RedButton_X");
			Core.addClass(element, "RedButton_P");
		return;
		}
		else if (Core.hasClass(element, "YellowButton_X"))
		{
			Core.removeClass(element, "YellowButton_X");
			Core.addClass(element, "YellowButton_P");
		return;
		}
		else if (Core.hasClass(element, "GreenButton_X"))
		{
			Core.removeClass(element, "GreenButton_X");
			Core.addClass(element, "GreenButton_P");
		return;
		}
	},
	
	mouseupListener: function(event)
	{
		var element = this;
		if (Core.hasClass(element, "RedButton_P"))
		{
			Core.removeClass(element, "RedButton_P");
			Core.addClass(element, "RedButton_X");
		return;
		}
		else if (Core.hasClass(element, "YellowButton_P"))
		{
			Core.removeClass(element, "YellowButton_P");
			Core.addClass(element, "YellowButton_X");
		return;
		}
		else if (Core.hasClass(element, "GreenButton_P"))
		{
			Core.removeClass(element, "GreenButton_P");
			Core.addClass(element, "GreenButton_X");
		return;
		}
	}
};

Core.start(HeaderSection1);
Core.start(ButtonPressed);