public static List<CDCRelation> readValidMatrices(){
		// load a file containing the matrix description of network
				String fileName = "ValidM.csv";
				//int[][] aWCTList = null;
				InputStream MatrixStream = CDCComposition.class.getResourceAsStream(fileName);;
				List<CDCRelation> aMatrixList = new ArrayList<CDCRelation>();

				BufferedReader br = null;
				String line = "";
				String cvsSplitBy = ",";
				//Reader reader = new InputStreamReader(WCTStream);
				
				try {

					br = new BufferedReader(new InputStreamReader(MatrixStream, "UTF-8"));
					//int lineNumber = 0;
					CDCRelation tempRelation;
					while ((line = br.readLine()) != null) {
						//line = line.replaceAll("\\s", ""); // remove all whitespaces
						// use comma as separator
						int[][] aMatrix = new int[3][3];
						for(int l=0;l<3;l++){
							String[] MatrixLine = line.split(cvsSplitBy); 
							//int[] tempListLine = new int[3];
							for (int i=0;i<3;i++){
								aMatrix[l][i] = Integer.parseInt(MatrixLine[i])-1;
								
							}
							line=br.readLine();
						}
						tempRelation = new CDCRelation(0);
						tempRelation.r = aMatrix;
						aMatrixList.add(tempRelation);
						//br.readLine();
						
					}

				} catch (FileNotFoundException e) {
					e.printStackTrace();
					System.out.println(fileName + "file not found. \n");
				} catch (IOException e) {
					e.printStackTrace();
				} finally {
					if (br != null) {
						try {
							br.close();
						} catch (IOException e) {
							e.printStackTrace();
						}
					}
				}
				
				System.out.println("Done read " + fileName + ".\n");
				return aMatrixList;
	}