 	var InputBgV=Array();
	InputBgV[1]=255;
	InputBgV[2]=243;
	InputBgV[3]=199;
	InputBgV[1]=209;
	InputBgV[2]=228;
	InputBgV[3]=239;
	InputBgV['max']=25;
	InputBgV['mode']=Array();

	function InputBg(id, out)
	{
		if(InputBgV['mode'][id])
		{
			InputBgV['mode'][id]=out ? 2 : 1;

			CCS(id, 'border', '1px solid ' + (out ? 'silver' : 'rgb(120,120,120)'));

			return;
		}

		InputBgV['mode'][id]=out ? 2 : 1;

		CCS(id, 'border', '1px solid ' + (out ? 'silver' : 'rgb(120,120,120)'));

		InputBgr(id, (out ? InputBgV['max'] : 1));
	}


	function InputBgr(id, step)
	{
		var c=Array(), color, i;

		for(i=1; i<=3; i++)
		{
			c[i]=Math.ceil(255 - ((255 - InputBgV[i]) / InputBgV['max'] * step));

			if(c[i] > 255)
			{
				c[i]=255;
			}
		}

		color='rgb(' + c[1] + ',' + c[2] + ',' + c[3] + ')';

		CCS(id, 'backgroundColor', color);

		step=(InputBgV['mode'][id] == 1) ? (step + 1) : (step - 1);

		if((InputBgV['mode'][id] == 1) && (step == InputBgV['max']))
		{
			InputBgV['mode'][id]=false;
			CCS(id, 'background', 'rgb(' + InputBgV[1] + ',' + InputBgV[2] + ',' + InputBgV[3] + ')');
		}
		else if((InputBgV['mode'][id] == 2) && (step == 1))
		{
			InputBgV['mode'][id]=false;
			CCS(id, 'background', 'rgb(255,255,255)');
		}
		else
		{
			setTimeout('InputBgr(\'' + id + '\', ' + step + ')', ((InputBgV['mode'][id] == 2) ? 25 : 10));
		}
	}


	var BH=Array();
	BH['maxa']=Array(0, 112);
	BH['runs']=0;

	function BHV(elem, max, speed)
	{
		idm=elem;

		if(!BH[idm]) BH[idm]=Array();

		if(BH[idm]['run']) return;

		BH['runs']++;

		BH[idm]['max']=BH[idm]['height']=false;

		BH[idm]['run']=true;
		BH[idm]['elem']=GO(elem);
		//BH[idm]['back']=(BH[idm]['elem'].style.display == 'none') ? false : true;
		BH[idm]['back']=BH[idm]['elem'].offsetHeight ? true : false;
		BH[idm]['elem'].blur();
		BH[idm]['speed']=speed ? speed : 35;

		if(max && BH['maxa'])
		{
			BH[idm]['max']=BH['maxa'][max];

			BH[idm]['height']=BH[idm]['back'] ? (BH[idm]['elem'].offsetHeight ? BH[idm]['elem'].offsetHeight : BH[idm]['max']) : 0;
		}
		else
		{
			if(BH[idm]['back'])
			{
				BH[idm]['height']=BH[idm]['max']=BH[idm]['elem'].offsetHeight;
			}
			else
			{
				CCS(elem, 'display', 'block');
				BH[idm]['max']=BH[idm]['elem'].offsetHeight;
				BH[idm]['height']=0;
				CCS(elem, 'display', 'none');
			}
		}

		CCS(BH[idm]['elem'], 'overflow', 'hidden');
		CCS(BH[idm]['elem'], 'height', BH[idm]['height'] + 'px');
		CCS(BH[idm]['elem'], 'display', 'block');

		if(BH[idm]['elem'].id == 'login')
		{
			if(BH[idm]['back'])
			{
				CCS('login-close', 'display', 'none');
			}
		}

		BHV_Go(idm);
	}



	function BHV_Go(idm)
	{
		var plus=BH[idm]['back'] ? Math.ceil(BH[idm]['height'] / BH[idm]['speed']) : Math.ceil((BH[idm]['max'] - BH[idm]['height']) / BH[idm]['speed']);

		BH[idm]['height']=BH[idm]['back'] ? (BH[idm]['height'] - plus) : (BH[idm]['height'] + plus);

		if((BH[idm]['back'] && (BH[idm]['height'] <= 0)) || (!BH[idm]['back'] && (BH[idm]['height'] >= BH[idm]['max'])))
		{
			if(BH[idm]['back'])
			{
				CCS(BH[idm]['elem'], 'display', 'none');
				CCS(BH[idm]['elem'], 'height', 'auto');
			}
			else
			{
				CCBD();
				if(CCBIE6)
				{
					// IE 6 neumi height auto
					//CCS(BH[idm]['elem'], 'height', 'auto');
				}
				else
				{
					CCS(BH[idm]['elem'], 'height', 'auto');
				}
			}

			if(BH[idm]['elem'].id == 'login')
			{
				if(!BH[idm]['back'])
				{
					CCS('login-close', 'display', 'block');
				}

			}

			BH[idm]['run']=false;
			BH['runs']--;

			if(BH[idm]['back'] && BH[idm]['function_end'])
			{
				setTimeout(BH[idm]['function_end'], 1);
			}
		}
		else
		{
			CCS(BH[idm]['elem'], 'height', BH[idm]['height'] + 'px');
			setTimeout('BHV_Go(\'' + idm + '\');', 7);
		}
	}