String[] getAllKeyParts(String begin, String end)  {
		
		if (begin == null) return new String[0];
		if (end == null) return new String[0];
		
		Properties allKeys = getAllKeyValuesByBeginAndEnd(begin,end);
		String[] keys = new String[0];

		if (unique == false) { keys = new String[allKeys.size()]; };
		Properties unique = new Properties();
		
		Enumeration e = allKeys.propertyNames();
		int i = 0;
		while (e.hasMoreElements()) {
		      String key = (String) e.nextElement();
		      if ((begin != null) && (end != null)) {		    	  
		    	  if (this.unique == true) {
		    		  unique.setProperty(key.substring(begin.length(), key.length()-end.length()), "1");
		    	  } else {
		    		  keys[i] = key.substring(begin.length(), key.length()-end.length());  
		    	  }
		      }
		      i++;
		}
		
		if (this.unique == true) {
			 keys = new String[unique.size()];
			 e = unique.propertyNames();
			 int j = 0;
			 while (e.hasMoreElements()) {
			      String key = (String) e.nextElement();
			      keys[j] = key;
			      j++;
			 }
		}
		
		return keys;
	}