public static final Manifest loadManifest(Class<?> theClass) throws IOException, URISyntaxException {
		URI uri = theClass.getProtectionDomain().getCodeSource().getLocation().toURI();
		File file = new File(uri.getPath());
		URL url = file.isDirectory() ? uri.resolve(MANIFEST_FILE).toURL() : new URL("jar:" + uri.toASCIIString() + "!/" + MANIFEST_FILE); //$NON-NLS-1$ //$NON-NLS-2$
		try (InputStream in = setupConnection(url).getInputStream()) {
			return new Manifest(in);
		}
	}