private boolean evaluateRestrainClause(String str) {
		double x = parseMathExpression(str);
		if (x < 0) {
			out(ScriptEvent.FAILED, "Restraint strength cannot be negative: " + str);
			return false;
		}
		int n = model.getAtomCount();
		if (n <= 0)
			return true;
		float c = (float) x;
		for (int k = 0; k < n; k++) {
			Atom a = model.getAtom(k);
			if (a.isSelected()) {
				if (c > ZERO) {
					Restraint r = a.getRestraint();
					if (r == null)
						r = new Restraint(a);
					r.setStrength(c);
				}
				else {
					a.setRestraint(null);
				}
			}
		}
		view.repaint();
		model.notifyChange();
		return true;
	}