private boolean evaluateTcfClause(String clause) {
		if (model instanceof MesoModel)
			return false;
		if (clause == null || clause.equals(""))
			return false;
		String[] sub = clause.split(REGEX_AND);
		Tcf.Parameter[] par = new Tcf.Parameter[sub.length];
		String funx, funy;
		byte id;
		short length;
		for (int n = 0; n < sub.length; n++) {
			int i = sub[n].indexOf("within");
			String str = i == -1 ? sub[n] : sub[n].substring(0, i).trim();
			try {
				String[] s = str.split(REGEX_SEPARATOR + "+");
				funx = s[0];
				funy = s[1];
				length = Float.valueOf(s[2].trim()).shortValue();
				id = Float.valueOf(s[3].trim()).byteValue();
			} catch (Exception e) {
				out(ScriptEvent.FAILED, "Script error at: " + str + "\n" + e);
				return false;
			}
			if (i >= 0) {
				str = sub[n].substring(i).trim();
				Matcher matcher = WITHIN_RECTANGLE.matcher(str);
				if (matcher.find()) {
					Rectangle2D area = getWithinArea(str);
					if (area == null)
						return false;
					par[n] = new Tcf.Parameter(funx, funy, id, length, area);
				}
			} else {
				par[n] = new Tcf.Parameter(funx, funy, id, length, model.boundary);
			}
		}
		((AtomicModel) model).showTCF(par);
		return true;
	}