routeMap(serverCall call, Boolean connectionsAllowed) throws JSONException, IOException, badApplicationScriptParsingException {
			
		String variable = new communicationInterface().navigatePage(call).get(0);
		
		JSONObject common = new JSONObject(variable);
		JSONArray stationList = common.getJSONObject("stationInfo").getJSONArray("StationList");
		JSONObject directMarketList = common.getJSONObject("marketInfo").getJSONObject("MarketList");
		JSONObject connectionMarketList = common.getJSONObject("connectionMarketInfo").getJSONObject("MarketList");
		JSONArray macList = common.getJSONObject("macInfo").getJSONArray("MacList");
		int i,j;
			
		//Informs he dictionaries
		name2Code = new HashMap<String,String>();
		code2Name = new HashMap<String,String>();
		JSONObject elem = new JSONObject();
		for(i=0;i<stationList.length();i++){
			elem=stationList.getJSONObject(i);
			name2Code.put(elem.getString("name"), elem.getString("code"));
			code2Name.put(elem.getString("code"), elem.getString("name"));
		}
			
		//Informs the macCodes
		macCodes = new HashMap<String,String>();

		for(i=0;i<macList.length();i++){
			elem=macList.getJSONObject(i);
			JSONArray JSONgroupedAirports=elem.getJSONArray("stations");
			name2Code.put(elem.getString("name"), elem.getString("code"));
			code2Name.put(elem.getString("code"), elem.getString("name"));
			for(j=0;j<JSONgroupedAirports.length();j++){
				macCodes.put(JSONgroupedAirports.getString(j), elem.getString("code"));
			}
		}
		
		String org,des;
		JSONArray orgJSONArray;
		Iterator<String> it= directMarketList.keys();
		routes= new HashMap<String,Set<String>>();
			
		//Informs the map
		while(it.hasNext()){
			org=it.next();
			orgJSONArray=directMarketList.getJSONArray(org);
			Set<String> orgSet = new HashSet<String>();
			routes.put(code2Name.get(org), orgSet);
			for(i=0;i<orgJSONArray.length();i++){
				des=orgJSONArray.getJSONObject(i).getString("code");
				orgSet.add(code2Name.get(des));
			}
			if(!connectionsAllowed){
				if(connectionMarketList.has(org)){
					orgJSONArray=connectionMarketList.getJSONArray(org);
					for(i=0;i<orgJSONArray.length();i++){
						des=orgJSONArray.getJSONObject(i).getString("code");
						orgSet.remove(code2Name.get(des));
					}
				}
			}
		}	
	}