function verticalAlignEl(elem,identifire) {
	var ul_height = 309; /*subnav height*/
	var li_height = 20; /*subnav li height*/
	var nav_height = 47; /*nav menu height*/
	var count_li = elem.find("li").size(); /*count li in subnav*/
	var first = identifire; /*true if we has clicked on the element in first row*/
	var first_subnav_corection = 0; /*defaults for padding correction*/
	
	/*firat row padding correction*/
	if (first) { first_subnav_corection = 40;}
	
	/*if element already clicked, remove styles for spacial padding*/ 
	if (elem.height() != ul_height) { 
		elem.removeAttr("style"); 
	}
	
	/*math required spacial padding and correction for each subnav*/
	var ul_top_padding = ((elem.height()-nav_height) - (count_li*li_height) - first_subnav_corection)/2;
	
	/*add styles to subnav*/ 
	elem.css({paddingTop: ul_top_padding+"px", height: elem.height()-ul_top_padding+"px"});
}

function linkHover() {
	jQuery("ul.editional-top-nav li ul li a").click(function(){
		jQuery(this).addClass("hover-link");
	});
}

function TopNav() {
	jQuery("ul.editional-top-nav li a.top-nav-link").click(function(){
		
 		var subnav = jQuery(this).parent().find("ul");
 		/*check if it`s the first row element*/
 		var first = jQuery(this).parent().hasClass("first"); 
 		
 		/*close all subnav ul*/
 		jQuery("ul.editional-top-nav li ul").slideUp();
		
		/*check if element is hidden*/
		if(subnav.is(":hidden")) {
			/*add special padding and padding correction if needs*/
			verticalAlignEl(subnav,first);
			/*show clicked subnav ul*/
 			subnav.slideDown();	
 		} else {
 			/*hide clicked subnav ul*/
 			subnav.slideUp();
	 	}
		
 		/*disable link functions*/
	 	return false;
 	});
	
	linkHover();
}