private void ValidateGlobalInputs() {
    	int numScouts = Integer.parseInt(NumScouts_Field.getText());
        int numRunsperTest = Integer.parseInt(RunsPerTestField.getText());
        int setVisibility = Integer.parseInt(VisibilityField.getText());
        double netThreshold = Double.parseDouble(NetworkThreshold.getText());
        int epochInt = Integer.parseInt(EpochInterval.getText());
        
        if (epochInt < 0) {
            GUI_NB.GCO("ERROR!  Epoch interval out of range.");
            return;
        }
        if (netThreshold < 0 || netThreshold > 1) {
            GUI_NB.GCO("ERROR!  Network threshold is out of range.");
            return;
        }
        
        if (setVisibility < 1) {
            GUI_NB.GCO("ERROR!  Visibility too low.");
            return;
        }
        
        if (numScouts < 1) {
            GUI_NB.GCO("ERROR! Improper number of scouts.");
            return;
        }
        
        if (numRunsperTest < 1) {
            GUI_NB.GCO("ERROR!  Improper number of runs per test case.");
            return;
        }
        
       
        GlobalFuncs.epochInterval = epochInt;
        GlobalFuncs.inputPrefix = LoadPopDir.getText();        
        GlobalFuncs.networkResultThreshold = netThreshold;
        
        GlobalFuncs.outputPrefix = PrefixOutputField.getText();
        FIO.newDirectory("src/saves/" + GlobalFuncs.outputPrefix);
        
      

                    	
    	File dOut = FIO.newFile("src/saves/" + GlobalFuncs.outputPrefix + "/" + DetailedOutputFileField.getText());
    	File sOut = FIO.newFile("src/saves/" + GlobalFuncs.outputPrefix + "/" + SummaryOutputFileField.getText());
        File iterOut = FIO.newFile("src/saves/" + GlobalFuncs.outputPrefix + "/" + "detailedIterations.txt");
    	
    	GlobalFuncs.detailedOutput = dOut.toPath();
    	GlobalFuncs.summaryOutput = sOut.toPath();
        GlobalFuncs.fullIterOutput = iterOut.toPath();
        
        if (overwriteDataFiles) {
            FIO.overwriteFile(GlobalFuncs.detailedOutput, "");
            FIO.overwriteFile(GlobalFuncs.summaryOutput, unit.JNEATIntegration.PrintTestSummaryKey());
            FIO.overwriteFile(GlobalFuncs.fullIterOutput, unit.JNEATIntegration.PrintDetailedIterKey());
            GUI_NB.GCO("Output files overwritten");
        }
        
        
        GlobalFuncs.visibility = setVisibility;
        
        StringBuffer buf = new StringBuffer("");
        buf.append("Vis: " + setVisibility + ", ");        
        buf.append("Population: " + GlobalFuncs.inputPrefix + ", ");
        buf.append("Fitness: " + GlobalFuncs.defaultFitType.toString() + ", ");
        buf.append("Death: " + GlobalFuncs.deathPenalty + ", ");
        buf.append("Net Thresh: " + GlobalFuncs.networkResultThreshold + ", ");
        buf.append("Force conceal: " + GlobalFuncs.forceTreePlacement + ", ");
        
                       
        FIO.appendFile(GlobalFuncs.summaryOutput, buf.toString());
        
        JNEATIntegration.PopTestFromDir(numScouts, numRunsperTest);
        dispose();    	
    }