public Set<Node> retrieveNodes(IAtomContainer molContent,String moleculeName){
		Set<Node> nodes=new LinkedHashSet<Node>();
		try{
			Set<String> labelZeroNode=new LinkedHashSet<String>();
			//labelZeroNode.add(moleculeName);
			labelZeroNode.add("molecule");
			nodes.add(new Node(new Integer(0),labelZeroNode));
			int numberOfAtoms=molContent.getAtomCount();
			for (int i=0; i<numberOfAtoms; i++){
				int nodeIndex=i+1;
				Set<String> label=new LinkedHashSet<String>();
				label.add(molContent.getAtom(i).getSymbol().toLowerCase());
				Integer dcharge=molContent.getAtom(i).getFormalCharge();
				if (dcharge!=null){
					int charge=molContent.getAtom(i).getFormalCharge().intValue();
					switch (charge) {
					case 1:  label.add("plus1");
	                     	break;
					case 2:  label.add("plus2");
	                     	break;
					case 3:  label.add("plus3");
	                     	break;
					case -1:  label.add("minus1");
	                     	break;
					case -2:  label.add("minus2");
	                     	break;
					case -3:  label.add("minus3");
	                     	break;
					default: 
							break;
					}
				}
				nodes.add(new Node(new Integer(nodeIndex),label));
			}
		}
		catch(Exception e){
			e.printStackTrace();
		}		
		return nodes;		
	}