function showTermsList(){

	var a_letters = new Array();
	
	a_letters['А'] = 0; a_letters['Б'] = 0; a_letters['В'] = 0; a_letters['Г'] = 0; a_letters['Д'] = 0; a_letters['Е'] = 0; a_letters['Ж'] = 0; 	
	a_letters['З'] = 0; a_letters['И'] = 0; a_letters['К'] = 0; a_letters['Л'] = 0; a_letters['М'] = 0; a_letters['Н'] = 0; a_letters['О'] = 0; 	
	a_letters['П'] = 0; a_letters['Р'] = 0; a_letters['С'] = 0; a_letters['Т'] = 0; a_letters['У'] = 0; a_letters['Ф'] = 0; a_letters['Х'] = 0; 
	a_letters['Ц'] = 0; a_letters['Ч'] = 0; a_letters['Ш'] = 0; a_letters['Щ'] = 0; a_letters['Э'] = 0; a_letters['Ю'] = 0; a_letters['Я'] = 0;

	var a_used_letters = $('#listSource').children('p[align="center"]').map(function(){
  																	return $(this).text()
  																	});
  	for(i=0;i<a_used_letters['length'];i++){
		a_letters[a_used_letters[i]] = 1;
	}																

	var s_output = '';

	for(a_letter in a_letters){
		if(0 == a_letters[a_letter])
			s_output += '<a>' + a_letter + '</a>&nbsp;&nbsp;\n';
		else
			s_output += '<a href="" onClick="highlightLetter(this); return false;">' + a_letter + '</a>&nbsp;&nbsp;\n';
	}
	
	$('#alphabetContainer').html(s_output);
	
	var a_glossary_src = $('#listSource').children('p[align!="center"]').map(function(){
  																	return $(this).html()
  																	});
  																	
	a_glossary = new Array();
															
	for(i=0;i<a_glossary_src['length'];i++){
		a_term_src = a_glossary_src[i].split('</b>');
		if('undefined' != typeof(a_term_src[0]) && 'undefined' != typeof(a_term_src[1]) && a_term_src[1] != '&nbsp;'){
			var s_key = a_term_src[0].replace(/^<B>/i, '');
			if(typeof(a_glossary[s_key.substr(0,1)]) != 'object') {
				a_glossary[s_key.substr(0,1)] = new Array();
				var j =0;	
			}
			
			var a_tmp_letter = new Array();
			
			a_tmp_letter['title'] = s_key;
			var s_text = a_term_src[1].replace(/^\s\-\s/, '');

			a_tmp_letter['text']  = s_text.replace(/^.?/, s_text.substr(0,1).toLocaleUpperCase());
			
			a_glossary[s_key.substr(0,1)][j] = a_tmp_letter;
			j++;
		}
	}
}

function highlightLetter(o_letter){
	$('#alphabetContainer').children('a.selected').removeClass('selected');
	o_letter.className = 'selected';
	s_letter = o_letter.innerHTML;
	
	var i_cols = 2;
	
	var s_output = '<tr>\n<td valign="top" width="' + (100/i_cols) + '%">';
	
	var i_delimiter = (a_glossary[s_letter].length + (a_glossary[s_letter].length%i_cols))/i_cols;

	for(i=0;i<a_glossary[s_letter].length;i++){
		s_output += '<p class="gl"><a href="" onClick="highlightTerm(\'' + s_letter + '\', ' + i + '); return false;">' + a_glossary[s_letter][i]["title"] + '</a></p>\n';
		
		if(i > 0 && i < (a_glossary[s_letter].length-1) && 0 == (i+1)%i_delimiter){
			s_output += '</td>\n<td valign="top" width="' + (100/i_cols) + '%">';
		}
	}
	
	s_output += '</tr>\n';
	
	$('#listContainer').html(s_output);
}

function highlightTerm(s_letter, i_term_id){
	$('#termTitleContainer').html(a_glossary[s_letter][i_term_id]['title']);
	$('#termContainer').html(a_glossary[s_letter][i_term_id]['text']);
}


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


function dump(arr,level,recursion) {
		  var dumped_text = "";
	
          if(!level) level = 0;
          if(!recursion) recursion = 0;
  
         
  
          //The padding given at the beginning of the line.
   
          var level_padding = "";
   
          for(var j=0;j<level+1;j++) level_padding += "&nbsp;&nbsp;&nbsp;&nbsp;";
      
          if(typeof(arr) == 'object') { //Array/Hashes/Objects
  
              for(var item in arr) {
  
                  var value = arr[item];
  
                  if(typeof(value) == 'object') { //If it is an array,
  
                    dumped_text += level_padding + "'" + item + "' ...\n<br>";
  
                    if(recursion > 0){
                    	dumped_text += dump(value,level-1,recursion);
                    }
                      
                  } else if(typeof(value) != 'function'){
  
                      dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n<br>";
  					  
                  }
              }
              
                    window1=open("", "displayWindow","width=600,height=400,status=no,resizable=yes,scrollbars=yes,menubar=no");
					window1.document.open();
					window1.document.writeln("<html><body>");
					window1.document.writeln(dumped_text);
					window1.document.writeln("</body></html>");
					window1.document.close();
  
          } else if(typeof(value) != 'function'){ //Stings/Chars/Numbers etc.
  
              dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
  			  alert(dumped_text);
          }
  
          return dumped_text;
  
}
