public static void load() {
		ColorKeys.Log(Level.INFO, "Loading Debuggers...");

		if (!DebugFile.exists())
			ColorKeys.Log("No Debuggers to load.");
		else {
			Debuggers = new HashMap<String, Boolean>();
			DocumentBuilderFactory dbfac = DocumentBuilderFactory.newInstance();
			DocumentBuilder docBuilder = null; try {docBuilder = dbfac.newDocumentBuilder();} catch (ParserConfigurationException e) {}
			Document doc = null;

			try {
				doc = docBuilder.parse(DebugFile);
				doc.getDocumentElement().normalize();
			}
			catch (IOException | SAXException e) {
				ColorKeys.Log(Level.SEVERE, "Debuggers file is malformed.");

				e.printStackTrace();

				return;
			}

			try {
				@SuppressWarnings("unused")
				Double fileVersion = -1.0;

				NodeList fileVersionNodeList = doc.getElementsByTagName("file");

				if (fileVersionNodeList.getLength() > 0) {
					for (int i = 0; i < fileVersionNodeList.getLength(); i++) {
						Node fileVersionNode = fileVersionNodeList.item(i);

						if (fileVersionNode.getNodeType() == Node.ELEMENT_NODE) {
							Element fileVersionElement = (Element) fileVersionNode;

							fileVersion = Double.parseDouble(fileVersionElement.getAttribute("version"));
						}
					}
				}
				else {
					fileVersion = 1.0;
				}

				NodeList DebugNodeList = doc.getElementsByTagName("player");

				for (int i = 0; i < DebugNodeList.getLength(); i++) {
					Node DebugNode = DebugNodeList.item(i);

					if (DebugNode.getNodeType() == Node.ELEMENT_NODE) {
						Element DebugElement = (Element) DebugNode;

						String name = DebugElement.getAttribute("name");
						boolean debugging = Boolean.parseBoolean(DebugElement.getAttribute("debugging"));

						Debuggers.put(name, debugging);
					}
				}
			}
			catch (Exception e) {
				ColorKeys.Log(Level.SEVERE, "Debuggers file is not in the expected format.");

				e.printStackTrace();

				return;
			}

			ColorKeys.Log(Level.INFO, "Debuggers loaded successfully.");
		}
	}