public ArrayList<node> expandNodes() {
		ArrayList<node> childNodes = new ArrayList<node>();
		ArrayList<Integer> subState = createSubState(nodeState);

		for (int i=0; i< subState.size(); i++){
			node newState = createNewState(subState.get(i));
			if(newState != null){
				childNodes.add(newState);
			}
		}

		return childNodes;
	}