class Paths {

    public static Path get(final String first,
                           final String... more)
            throws IllegalArgumentException {
        checkNotNull("first",
                     first);

        if (first.trim().length() == 0) {
            return FileSystems.getDefault().getPath(first);
        }

        URI uri = null;
        if (more == null || more.length == 0) {
            try {
                uri = new URI(first);
            } catch (URISyntaxException ex) {
                try {
                    uri = URI.create(first);
                } catch (IllegalArgumentException e) {
                    uri = null;
                }
            }
        }
        if (uri != null && uri.getScheme() != null) {
            return get(uri);
        }

        return FileSystems.getDefault().getPath(first,
                                                more);
    }

    private  Paths();

}