	// ÇÑ±Û Ã¼Å©
	function IsHangulCorrect( val ) {
		for ( i = 0; i < val.length; i++ ) {
			ch = val.charCodeAt( i );
			if ( ch <= 128 ) return false;
		}
		return true;
	}

	// ÇÑ±Û Æ÷ÇÔ ¿©ºÎ Ã¼Å©
	function IsHangulExists( val ) {
		for ( i = 0; i < val.length; i++ ) {
			ch = val.charCodeAt( i );
			if ( ch > 128 ) return true;
		}
		return false;
	}

	// ¿µ¹®ÀÚ Ã¼Å©
	function IsAlphabetCorrect( checkStr, caseStr, addStr ) {
		var checkLower = "abcdefghijklmnopqrstuvwxyz";
		var checkUpper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		var checkOK = "";
		
		// Ã¼Å©ÇØ¾ßÇÒ ¹®ÀÚÁöÁ¤ : a - ¼Ò¹®ÀÚ, A - ´ë¹®ÀÚ, all - ´ë¼Ò¹®ÀÚ¸ðµÎ
		if ( caseStr == "a" ) checkOK = checkLower;
		else if ( caseStr == "A" ) checkOK = checkUpper;
		else if ( caseStr == "all" ) checkOK = checkLower + checkUpper;
		
		// Ãß°¡ÀûÀ¸·Î Ã¼Å©ÇØ¾ßÇÒ ¹®ÀÚµé
		checkOK += addStr;
	  	
	  	for (i = 0;  i < checkStr.length;  i++)  {
	    		ch = checkStr.charAt(i);
	    		for (j = 0;  j < checkOK.length;  j++)
	      			if (ch == checkOK.charAt(j)) break;
	    		if (j == checkOK.length) {
	      			return (false);
	      			break;
	    		}
	  	}
	  	return (true);
	}
	
	// ¼ýÀÚ Ã¼Å©
	function IsNumericCorrect( checkStr, addStr ) {
		var checkOK = "0123456789";
		
		// Ãß°¡ÀûÀ¸·Î Ã¼Å©ÇØ¾ßÇÒ ¹®ÀÚµé
		checkOK += addStr;
	  	
	  	for (i = 0;  i < checkStr.length;  i++)  {
	    		ch = checkStr.charAt(i);
	    		for (j = 0;  j < checkOK.length;  j++)
	      			if (ch == checkOK.charAt(j)) break;
	    		if (j == checkOK.length) {
	      			return (false);
	      			break;
	    		}
	  	}
	  	return (true);
	}

	// ÁÖ¹Î¹øÈ£ Ã¼Å©
	function IsJuminNumCorrect( checkStr ) {
		var chk3 = 0;
			
		for ( var i = 0; i <= 11; i++ )
			chk3 = chk3 + ((i%8+2) * parseInt(checkStr.substring(i,i+1)))
	
		chk3 = 11 - (chk3 % 11);
		chk3 = chk3 % 10;
			
		if ( chk3 != parseInt(checkStr.substring(12,13)) ) return false;
	
		return true;
	}

	// ¿Ü±¹ÀÎµî·Ï¹øÈ£ Ã¼Å©
	function IsForeignNoCorrect( reg_no ) {
		var sum = 0, odd = 0;

		multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
		buf = new Array(13);

		for ( i = 0; i < 13; i++ ) buf[i] = parseInt( reg_no.charAt(i) );
		
		odd = buf[7] * 10 + buf[8];
		
		if ( odd % 2 != 0 ) return false;
		
		if ( (buf[11] != 6) && (buf[11] != 7) && (buf[11] != 8) && (buf[11] != 9) ) return false;
		
		for ( i = 0, sum = 0; i < 12; i++ ) sum += (buf[i] *= multipliers[i]);
		
		sum = 11 - (sum % 11);
		
		if ( sum >= 10 ) sum -= 10;
		
		sum += 2;
		
		if ( sum >= 10 ) sum -= 10;
		
		if ( sum != buf[12] ) return false;
		else	return true;
	}

	// ¾îÇÐ½ÃÇè ÁÖ¹Î¹øÈ£Ã¼Å©(ÁÖ¹Î¹øÈ£, ¿Ü±¹ÀÎµî·Ï¹øÈ£)
	function IsJuminNo( juminno ) {
		var result, gender;
		
		result = IsNumericCorrect( juminno, "" );
		
		if ( result ) {
			gender = juminno.substr( 6, 1 );
			
			if ( gender == "5" || gender == "6" || gender == "7" || gender == "8" ) {
				result = IsForeignNoCorrect( juminno );
			}
			else if ( gender == "9" ) {
				var cyear, cmonth;
				
				cyear = Number( juminno.substr( 0, 2 ) );
				cmonth = Number( juminno.substr( 2, 2 ) );
				
				if ( (cyear >= 0 && cyear <= 99) && (cmonth >= 1 && cmonth <= 12 ) ) result = true;
				else result = false;
			}
			else {
				result = IsJuminNumCorrect( juminno );
			}
		}
		
		return result;
	}

	// ¿ÀÅäÅÇ : ÀÚµ¿À¸·Î Æ÷Ä¿½ºÀÌµ¿ÇÏ±â
	function AutoTab(from_obj, to_obj, aa) {
		if (from_obj.value.length >= aa) to_obj.focus();
	}

	// ¿ìÆí¹øÈ£Ã£±â
	function FindAddress( frm, zipcode1, zipcode2, addr1, addr2, opt ){
		var url = "/common_exam/popup_address.asp?frm=" + frm + "&zipcode1=" + zipcode1 + "&zipcode2=" + zipcode2 + "&addr1=" + addr1 + "&addr2=" + addr2 + "&opt=" + opt;
		var position = "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=no,width=495,height=308";
		var win = window.open( url, "_findaddress", position);
	}

	// Ãâ·Â °¡´ÉÇÑ ÇÁ¸°ÅÍ ¸ñ·Ï - ¾ÆÀÌ¿£ÅØ
	function PrinterList() {
		window.open('http://www.certpia.com/common_popup/ybm_printlist/index.asp','_printlist','width=425,height=530');
	}

	// ¼ýÀÚ ¼¼ÀÚ¸®¸¶´Ù ÄÄ¸¶ Âï¾îÁÖ±â
	function FormatNumber( num ) {
		var temp = new String( num );
		
		if ( temp.length < 1 ) return "";
		
		// À½¼öÃ³¸®
		if ( temp.substr( 0,1 ) == "-" ) minus = "-";
		else minus = "";
		
		// ¼Ò¼öÁ¡ÀÌÇÏÃ³¸®
		dpoint = temp.search( /\./ );
		if ( dpoint > 0 ) {
			// Ã¹¹øÂ° ¸¸³ª´Â .À» ±âÁØÀ¸·Î ÀÚ¸£°í ¼ýÀÚÁ¦¿ÜÇÑ ¹®ÀÚ »èÁ¦
			dpointVa = "." + temp.substr( dpoint ).replace( /\D/g, "" );
			temp = temp.substr( 0, dpoint );
		}
		else dpointVa = "";
		
		// ¼ýÀÚÀÌ¿Ü¹®ÀÚ »èÁ¦
		temp = temp.replace( /\D/g, "" );
		zero = temp.search( /[1-9]/ );
		if ( zero == -1 ) return "";
		else if ( zero != 0 ) temp = temp.substr( zero );
	
		if ( temp.length < 4 ) return minus + temp + dpointVa;
		buf = "";
		while ( true ) {
			if ( temp.length < 3 ) {
				buf = temp + buf;
				break;
			}
			buf = "," + temp.substr( temp.length - 3 ) + buf;
			temp = temp.substr( 0, temp.length - 3 );
		}
		if ( buf.substr( 0, 1 ) == "," ) buf = buf.substr( 1 );
		
		return minus + buf + dpointVa;
	}
	
	// ¶óµð¿À¹öÆ°ÀÌ Ã¼Å©µÇ¾î ÀÖ´ÂÁö Ã¼Å©ÇÔ
	function CheckRadioButton( obj ) {
		var result, i;
		
		result = false;
		
		if ( obj.length != null ) {
			for ( i = 0; i < obj.length; i++ ) {
				if ( obj[i].checked ) result = true;
			}
		}
		else {
			if ( obj.checked ) result = true;
		}
		
		return result;
	}

	// ¶óµð¿À¹öÆ°¿¡ °ªÀ» ¼ÂÆÃÇÔ
	function SetRadioButton( obj, val ) {
		for ( i = 0; i < obj.length; i++ ) {
			if ( obj[i].value == val ) {
				obj[i].checked = true;
				break;
			}
		}
	}
	
	// ¼¿·ºÆ®¹Ú½º¿¡ °ªÀ» ¼ÂÆÃÇÔ
	function SetSelectBox( obj, val ) {
		for ( i = 0; i < obj.options.length; i++ ) {
			if ( obj.options[i].value == val ) {
				obj.selectedIndex = i;
				break;
			}
		}
	}

	// Ã¼Å©¹Ú½º°¡ Ã¼Å©µÇ¾î ÀÖ´ÂÁö Ã¼Å©ÇÔ
	function CheckCheckBox( obj ) {
		var result, i;
		
		result = false;
		
		if ( obj.length != null ) {
			for ( i = 0; i < obj.length; i++ ) {
				if ( obj[i].checked ) {
					result = true;
					break;
				}
			}
		}
		else {
			if ( obj.checked ) result = true;
		}
		
		return result;
	}

	// Ã¼Å©¹Ú½º¿¡ °ªÀ» ¼ÂÆÃÇÔ
	function SetCheckBox( obj, val ) {
		arr_val = val.split( ", ")
		
		if ( obj.length != null ) {
			// Ã¼Å©¹Ú½º°¡ ¿©·¯°³ÀÏ¶§
			for ( i = 0; i < obj.length; i++ ) {
				obj[i].checked = false;
				for ( j = 0; j < arr_val.length; j++ ) {
					if ( obj[i].value == arr_val[j] ) {
						obj[i].checked = true;
						break;
					}
				}
			}
		}
		else {
			// Ã¼Å©¹Ú½º°¡ ÇÏ³ªÀÏ¶§
			if ( obj.value == arr_val[0] ) obj.checked = true;
			else obj.checked = false;
		}
	}
	
	// CBT CenterÀÇ ¾àµµ¸¦ º¸¿©ÁÜ
	function CBTCenterMap( centerid ) {
		if ( centerid == "" ) {
			window.alert( "½ÃÇè¼¾ÅÍ¸¦ ¼±ÅÃÇØ ÁÖ¼¼¿ä" );
			return;
		}
		
		window.open( "http://exam.ybmsisa.com/common_exam/popup_cbtcentermap.asp?centerid=" + centerid );
	}

	// ÀÌ¸ÞÀÏÇü½ÄÀÌ ¿Ã¹Ù¸¥Áö Ã¼Å©ÇÔ
	function IsEmailCorrect( email ) {
		if ( IsHangulExists( email ) ) return false;
		if ( email.indexOf( "@" ) == -1 ) return false;
		if ( email.indexOf( "." ) == -1 ) return false;
		if ( email.indexOf( "hanmail.com" ) > 0  ) return false;

		var invalidChars = " \"|&;<>!*\'\\";
		for ( var i = 0; i < invalidChars.length; i++ ) {
			if ( email.indexOf( invalidChars.charAt( i ) ) != -1 )
				return false;
		}

		if ( window.RegExp ) {
			var reg1 = new RegExp( "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)" );
			var reg2 = new RegExp( "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$" );
			
			if ( reg1.test( email ) || !reg2.test( email ) ) return false;
		}

		return true;
	}

	// ¾àµµº¸±â
	function ShowMap( examid, mapid ) {
		if ( examid == "5" && mapid == "x" )
			window.open( "http://exam.ybmsisa.com/tsc/images/img_faq/map_ShanghaiCenter.jpg" );
		else
			window.open( "/common_exam/popup_showmap.asp?examid="+examid+"&mapid="+mapid, "_showmap", "width=750,height=800,scrollbars=yes" );
	}
