private List<Node> findSubnodeExcepts(Object... subs) {
		if (subs == null) {
			return null;
		}

		List<Node> variables = this.getFirstLevelSubnodes();
		if (variables == null || variables.isEmpty()) {
			return null;
		}

		List<Node> list = null;
		subnodes: for (Node node : variables) {
			for (int i = 0; i < subs.length; i++) {
				if (subs[i] != null
						&& subs[i].equals(node.getSubscriptAsString())) {
					continue subnodes;
				}
			}
			if (list == null) {
				list = new ArrayList<Node>(30);
			}
			list.add(node);

		}
		return list;
	}