private void reload() throws IOException {
	File f = new File("servers.json");
	if(!f.exists()) {
	    writeServers();
	    System.out.println(Client.instance.translation.translate("file.created", "servers.json"));
	}
	servers = new Gson().fromJson(new InputStreamReader(new FileInputStream("servers.json"), Charset.forName("UTF-8")), new TypeToken<List<ServerListEntry>>(){}.getType());
	if(!servers.containsAll(ServerListEntry.DEFAULT)) {
	    servers.addAll(0, ServerListEntry.DEFAULT);
	    writeServers();
	}
	adapter = new ListAdapter<ServerListEntry>(servers) {

	    @Override
	    public int getHeight(ServerListEntry element, GuiScrollList parent) {
		return 100;
	    }

	    @Override
	    public int getWidth(ServerListEntry element, GuiScrollList parent) {
		return parent.getWidth();
	    }

	    @Override
	    public Gui get(ServerListEntry element, GuiScrollList parent) {
		return element.getGui();
	    }
	};
	serverList = new GuiScrollList(this, adapter, 1, 0, 0);
	for(ServerListEntry e : servers)
	    e.ping();
	controlList.add(serverList);
    }