public static void main(String[] args) throws NoSuchFileException, IllegalArgumentException {
    	
    	if (args.length >= 5) {
    		
        	Draft.checkHash( args[0] );
        	Draft.checkRange(args[1], 4, 15);
        	Draft.checkRange(args[2], 1, 50);
        	Draft.checkRange(args[3], 0., 1.);
        	for(int j=4; j < args.length; j++)
        		Draft.checkPath( args[j] );
        	
        	String[] files = new String[args.length - 4];
        	for(int j=4; j<args.length; j++)
        		files[j-4]=args[j];
        	
        	exec(files, Integer.parseInt(args[2]), Integer.parseInt(args[1]), args[0],
        			Double.parseDouble(args[3]));
        	
    	} else if (args.length == 0) {
    		
        	String hash =		GetInput.askHash("Hash function");
        	String[] urls = 	GetInput.askPathSet("Paths to the files");
        	int b = 			GetInput.askParameterInRange("Parameter b", 4, 15);
        	int k = 			GetInput.askParameterInRange("Parameter k", 1, 50);
        	double threshold =  GetInput.askParameterInRange("Threshold", 0., 1.);
        	exec(urls, k, b, hash, threshold);
        	
    	} else
    		throw new IllegalArgumentException("Wrong number of arguments (5 or more expected)");
    	
    }