private void parseRangeNodes(Collection<ParameterNode> nodes) throws Exception {
	param_ranges	= new HashMap<>();

	for (ParameterNode p : nodes) {
	    if (!p.isGroup()) {
		continue;
	    }

	    ParameterGroup	g		= (ParameterGroup) p;
	    String		value_name	= g.getChild("valuename").getValueAsString();
	    float		min		= Float.parseFloat(g.getChild("min").getValueAsString());
	    float		max		= Float.parseFloat(g.getChild("max").getValueAsString());
	    int[]		min_max		= { (int) min, (int) max };

	    if (min_max[0] < 0) {
		min_max[0]	= 0;
	    }

	    if ((min_max[1] < 0) || (min_max[1] > 255)) {
		min_max[1]	= 255;
	    }

	    if (min_max[0] > min_max[1]) {
		int	temp	= min_max[1];

		min_max[1]	= min_max[0];
		min_max[0]	= temp;
	    }

	    param_ranges.put(value_name, min_max);
	}
    }