public static GameModel loadFromFile(String filename)
			throws MapLoaderException {
		try (Scanner scanner = new Scanner(new File(filename))) {

			GameField field = parseSquares(scanner);

			parseBuildings(field, scanner);

			parseUnits(field, scanner);

			return new GameModel(field);

		} catch (IOException e) {
			throw new MapLoaderException(e.getMessage());
		}
	}