@Nonnull
		private static PathAndName fromString(@Nonnull String pathName) {
			if (pathName.contains("://")) {
				// Absolute URI paths
				if (pathName.startsWith("file://")) {
					return fromUriString(pathName);
				} else {
					// Probably something like "https://foo.com/bar.zip"
					// Try normalizing a simple name out of it if possible.
					while (pathName.endsWith("/")) pathName = pathName.substring(0, pathName.length() - 1);
					String name = pathName.substring(pathName.lastIndexOf('/') + 1);
					if (!name.matches("\\w+")) name = "remote";
					return new PathAndName(null, name);
				}
			} else if (pathName.startsWith("file:./")) {
				// Relative URI paths
				return fromUriString(pathName);
			} else {
				// Probably local file paths
				Path localPath;
				try {
					// Try and resolve a file path to the give path-name.
					// In some cases the input name is a remote resource not covered by the block above,
					// so we don't really care if it fails. That just means it is a remote resource of some kind.
					localPath = Paths.get(pathName);
				} catch (Throwable t) {
					localPath = null;
				}
				return new PathAndName(localPath, pathName.substring(pathName.lastIndexOf('/') + 1));
			}
		}
Should <i>ONLY</i> be called if there is an existing duplicate/conflict in the given JVM class bundle.

@param existingClass
		Prior class entry in the class bundle.
@param currentClass
		New entry to de-duplicate.
@param classes
		Target class bundle.
@param files
		Target file bundle for fallback item placement.
recaf-core/src/main/java/software/coley/recaf/services/workspace/io/BasicResourceImporter.java