	function include(astrFile)
	{
		var script = document.createElement('script');
		script.src = astrFile;
		script.type = 'text/javascript';
		script.defer = true;
		document.getElementsByTagName('head').item(0).appendChild(script);
	}

	include(CONTEXT_PATH + '/js/lib/jkl-parsexml.js');
	include(CONTEXT_PATH + '/js/yamat/maps/ytMap/util/Constant.js');
	include(CONTEXT_PATH + '/js/yamat/maps/ytMap/util/CommonProc.js');
	include(CONTEXT_PATH + '/js/yamat/maps/ytMap/beans/InitParam.js');
	
	var constant;
	var commonProc;
	var lng;
	var lat;
	var zoomLevel;
	var initParam;
	var savePrefCode;
	var savarCityCode;
	var cookieUseFlag = false;
	var RESOURCE_XML_PATH = CONTEXT_PATH + "/js/yamat/maps/ytMap/xml/";
	var urlMap = {
		"block_diff_market":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13110&iconId=block_diff_market,2&lng=139.688788&lat=35.650828&mapTypeNo=3&zoomLevel=13",
		"block_diff_market_chintai":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13110&iconId=block_diff_market,2&lng=139.688788&lat=35.650828&mapTypeNo=3&zoomLevel=13",
		"block_diff_market_baibai":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13110&iconId=block_diff_market,1&lng=139.688788&lat=35.650828&mapTypeNo=3&zoomLevel=13",
		"block_diff_market_rimawari":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13110&iconId=block_diff_market,0&lng=139.688788&lat=35.650828&mapTypeNo=3&zoomLevel=13",
		"landmarkSearch":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13113&iconId=landmarkSearch&lng=139.701467&lat=35.658726&mapTypeNo=1&zoomLevel=16",
		"populations":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13101&iconId=populations&lng=139.755964&lat=35.671051&mapTypeNo=3&zoomLevel=16",
		"useZone":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13113&iconId=useZone&lng=139.701365&lat=35.658517&mapTypeNo=1&zoomLevel=16",
		"koujimst":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13102&iconId=koujimst&lng=139.765014&lat=35.671234&mapTypeNo=2&zoomLevel=16",
		"chousamst":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13102&iconId=chousamst&lng=139.765014&lat=35.671234&mapTypeNo=1&zoomLevel=16",
		"reit":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13104&iconId=reit&lng=139.700249&lat=35.690938&mapTypeNo=2&zoomLevel=16",
		"localFacilities":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13113&iconId=localFacilities&lng=139.701365&lat=35.658517&mapTypeNo=1&zoomLevel=16",
		"ecoscore":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13102&iconId=ecoscore&lng=139.745447&lat=35.65861&mapTypeNo=3&zoomLevel=19",
		"solarscore":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13105&iconId=solarscore&lng=139.75224&lat=35.705397&mapTypeNo=3&zoomLevel=19",
		"katudanso":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13103&iconId=activefault&lng=139.745447&lat=35.65861&mapTypeNo=2&zoomLevel=9",
		"typhoon":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13103&iconId=typhoon, and observation_time >= '20050800' and observation_time <= '20050899'&lng=139.745525&lat=35.658613",
		"typhoonrisk":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13103&iconId=typhoonrisk&lng=139.745447&lat=35.65861&mapTypeNo=2&zoomLevel=16",
		"heavyrain":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13103&iconId=heavyrain&lng=139.745525&lat=35.658613",
		"downpour":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13103&iconId=downpour&lng=139.745447&lat=35.65861&mapTypeNo=2&zoomLevel=16",
		"measurement":"/chintai/searchmap?searchKbn=1&conditionPrefecturecode=27&conditionCitycode=27141&iconId=measurement&lng=135.487368&lat=34.564111&mapTypeNo=2&zoomLevel=16"
	};
	
	function init() {
		
		constant = new Constant();				// 共通パラメタ
		commonProc = new CommonProc();

		readXml(RESOURCE_XML_PATH + constant.INIT_PARAM_FILE);
	
	}	

	function readXml(fileName) {
		var url = fileName;
		var http = new JKL.ParseXML( url );             // JKL.ParseXMLオブジェクトを生成
		http.async( parseFunc );                        // 呼び出し先関数を指定する
		http.parse();                                   // ダウンロード～解析～関数呼び出しする
	}

	function parseFunc(xmlVar) {

		initParam = new InitParam(xmlVar);

		lng = "";
		lat = "";
		zoomLevel = "";
		
		savePrefCode = commonProc.getCookie(constant.COOKIE_SAVE_PREFCODE);
		if (savePrefCode==null || savePrefCode=="") {
			savePrefCode = initParam.commonParam.PrefCode;
		}

		saveCityCode = commonProc.getCookie(constant.COOKIE_SAVE_CITYCODE);
		if (saveCityCode==null || saveCityCode=="") {
			var saveCityCodeAry = initParam.commonParam.CityCode.split(constant.SPLIT_STR);
			saveCityCode = "";
			for (i=0;i<saveCityCodeAry.length;i++) {
				saveCityCode += "&conditionCitycode=" + saveCityCodeAry[i];
			}
			
			// 座標を設定
			lng = "&lng=" + initParam.commonParam.AddressX;
			lat = "&lat=" + initParam.commonParam.AddressY;
			zoomLevel = "&zoomLevel=" + initParam.commonParam.InitLevel;
		} else {
			cookieUseFlag = true;
			saveCityCode = "&conditionCitycode=" + saveCityCode;
			var saveAdr = commonProc.getCookie(constant.COOKIE_SAVE_ADDRESS);
			if (saveAdr!=null && saveAdr!="") {
			} else {
				// 初期表示位置設定
				saveAdr = new GLatLng(initParam.commonParam.AddressY, initParam.commonParam.AddressX);
			}
			saveAdrAry = saveAdr.split(",");
			lat = "&lat=" + saveAdrAry[0];
			lng = "&lng=" + saveAdrAry[1];

			zoomLevel = commonProc.getCookie(constant.COOKIE_SAVE_ZOOMLEVEL);
			if (zoomLevel!=null && zoomLevel!="") {
				zoomLevel = Number(zoomLevel);
			} else {
				// 初期表示ズーム設定
				zoomLevel = initParam.commonParam.InitLevel;
			}
			zoomLevel = "&zoomLevel=" + zoomLevel;
		}
	}
	
	function getUrl(iconId) {
		var url = CONTEXT_PATH;

		if (!cookieUseFlag) {
			url += urlMap[iconId];
		} else {
			//zoomLevel = getMatchZoom(iconId, zoomLevel);
			
			switch(iconId)
			{
				case constant.LAYER_BLOCK_DIFF_MARKET:	// 相場
				case constant.LAYER_BLOCK_DIFF_MARKET_CHINTAI:	// 賃貸相場
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=block_diff_market,2&mapTypeNo=3&top=1";
					break;
				case constant.LAYER_BLOCK_DIFF_MARKET_BAIBAI:	// 売買相場
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=block_diff_market,1&mapTypeNo=3&top=1";
					break;
				case constant.LAYER_BLOCK_DIFF_MARKET_RIMAWARI:	// 利回り相場
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=block_diff_market,0&mapTypeNo=3&top=1";
					break;
				case constant.LAYER_LANDMARK_SEARCH:	// おすすめマップ
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=landmarkSearch&mapTypeNo=1&top=1";
					break;
				case constant.LAYER_POPULATIONS:	// 人口
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=populations&mapTypeNo=3&top=1";
					break;
				case constant.LAYER_USEZONE:	// 用途地域
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=useZone&mapTypeNo=1&top=1";
					break;
				case constant.LAYER_DECLAREDLAND:	// 地価公示
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=koujimst&mapTypeNo=2&top=1";
					break;
				case constant.LAYER_LANDSURVEY:	// 地価調査
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=chousamst&mapTypeNo=1&top=1";
					break;
				case constant.LAYER_J_REIT:	// REIT
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=reit&mapTypeNo=2&top=1";
					break;
				case constant.GROUP_LOCALFACILITIES:	// 周辺施設
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=localFacilities&mapTypeNo=1&top=1";
					break;
				case constant.LAYER_ECOSCORE:	// ECOスコア
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=ecoscore&mapTypeNo=3&top=1";
					break;
				case constant.LAYER_SOLARSCORE:	// ソーラースコア
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=solarscore&mapTypeNo=3&top=1";
					break;
				case constant.LAYER_KATUDANSO:	// 活断層
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=activefault&mapTypeNo=2&top=1";
					break;
				case constant.LAYER_TYPHOON:	// 台風
//					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=typhoon, and observation_time >= '20050800' and observation_time <= '20050899'&top=1";
//					break;
				case constant.LAYER_TYPHOONRISK:	// 台風(メッシュ)
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=typhoonrisk&mapTypeNo=2&top=1";
					break;
				case constant.LAYER_HEAVYRAIN:	// 豪雨
//					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=heavyrain&top=1";
//					break;
				case constant.LAYER_DOWNPOUR:	// 豪雨(メッシュ)
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=downpour&mapTypeNo=2&top=1";
					break;
				case constant.GROUP_MEASUREMENT:	// 測れるツール
					url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=" + savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&iconId=measurement&mapTypeNo=2&top=1";
					break;
				default:
					break;
			}
		}

		switch(iconId)
		{
			case constant.LAYER_CHINTAI:// 賃貸物件
				url = CONTEXT_PATH + "/chintai/searchmap?searchKbn=1&conditionPrefecturecode="+ savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&top=1";
				break;
			case constant.LAYER_BAIBAI:	// 売買物件
				url = CONTEXT_PATH + "/baibai/searchmap?searchKbn=1&conditionPrefecturecode="+ savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&top=1";
				break;
			case constant.LAYER_BUNJYO:	// 分譲物件
				url = CONTEXT_PATH + "/shinchiku/searchmap?searchKbn=1&conditionPrefecturecode="+ savePrefCode + saveCityCode + "&cookieUseFlag=1" + lng + lat + zoomLevel + "&top=1";
				break;
			default:
				break;
		}

		return url;  
	}
	
	function getMatchZoom(layerId, orgZoomLevel) {
			switch(layerId)
			{
				case constant.LAYER_BLOCK_DIFF_MARKET:	// 相場
				case constant.LAYER_BLOCK_DIFF_MARKET_CHINTAI:	// 賃貸相場
					zoomLevel = initParam.getInitPolygonDataMap()[layerId].getLevelPolygon()+1;
					break;
				case constant.LAYER_BLOCK_DIFF_MARKET_BAIBAI:	// 売買相場
					zoomLevel = initParam.getInitPolygonDataMap()[layerId].getLevelPolygon()+1;
					break;
				case constant.LAYER_BLOCK_DIFF_MARKET_RIMAWARI:	// 利回り相場
					zoomLevel = initParam.getInitPolygonDataMap()[layerId].getLevelPolygon()+1;
					break;
				case constant.LAYER_LANDMARK_SEARCH:	// おすすめマップ：ぐるなびで代用
					zoomLevel = initParam.getInitPointDataMap()[constant.LAYER_GNAVI].getLevelPoint()+1;
					break;
				case constant.LAYER_POPULATIONS:	// 人口
					zoomLevel = initParam.getInitPolygonDataMap()[layerId].getLevelPolygon()+1;
					break;
				case constant.LAYER_USEZONE:	// 用途地域
					zoomLevel = initParam.getInitPolygonDataMap()[layerId].getLevelPolygonMin()+1;
					break;
				case constant.LAYER_DECLAREDLAND:	// 地価公示
					zoomLevel = initParam.getInitPointDataMap()[layerId].getLevelPoint()+1;
					break;
				case constant.LAYER_LANDSURVEY:	// 地価調査
					zoomLevel = initParam.getInitPointDataMap()[layerId].getLevelPoint()+1;
					break;
				case constant.LAYER_J_REIT:	// REIT
					zoomLevel = initParam.getInitPointDataMap()[layerId].getLevelPoint()+1;
					break;
				case constant.GROUP_LOCALFACILITIES:	// 周辺施設:大学の情報を代用
					zoomLevel = initParam.getInitPointDataMap()[constant.LAYER_UNIVERSITY].getLevelPoint()+1;
					break;
				case constant.LAYER_ECOSCORE:	// ECOスコア
					zoomLevel = initParam.getInitPointDataMap()[layerId].getLevelPoint()+1;
					break;
				case constant.LAYER_SOLARSCORE:	// ソーラースコア
					zoomLevel = initParam.getInitPointDataMap()[layerId].getLevelPoint()+1;
					break;
				case constant.LAYER_KATUDANSO:	// 活断層
					zoomLevel = initParam.getInitPointDataMap()[layerId].getLevelPoint()+1;
					break;
				case constant.LAYER_TYPHOONRISK:	// 台風(メッシュ)
					zoomLevel = initParam.getInitPolygonDataMap()[layerId].getLevelPolygon()+1;
					break;
				case constant.LAYER_DOWNPOUR:	// 豪雨(メッシュ)
					zoomLevel = initParam.getInitPolygonDataMap()[layerId].getLevelPolygon()+1;
					break;
				default:
					zoomLevel = orgZoomLevel;
					break;
			}

			if (orgZoomLevel >= zoomLevel) {
				zoomLevel = orgZoomLevel;
			}
			// 各種のレイヤ情報が表示されるズームに変更
			zoomLevel = "&zoomLevel=" + zoomLevel;

			return zoomLevel;
	}
	
	// 相場
	function getMarketUrl(iconId, layerId) {
		var url = CONTEXT_PATH;
		url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13110&iconId=block_diff_market&layerId=" + layerId + "&lng=139.688788&lat=35.650828&mapTypeNo=3&zoomLevel=13";
		return url;
	}
	
	// 周辺施設
	function getFacilitiesUrl(iconId, layerId) {
		var url = CONTEXT_PATH;
		url += "/chintai/searchmap?searchKbn=1&conditionPrefecturecode=13&conditionCitycode=13113&iconId=localFacilities&layerId=" + layerId + "&lng=139.701365&lat=35.658517&mapTypeNo=1&zoomLevel=16";
		return url;
	}

