public <E extends ISaveAble> E[] getArray(String name, ISaveAbleFactory<E> factory) throws IllegalAccessError {
		int index;
		if((index = ObjectNames.indexOf(name)) != -1) {
			if(ObjectType.get(index) != OBJECT_ARRAY) {
				//technically miss used exception I think, but it fits the purpose
				throw new IllegalAccessError("You may only access saved Arrays via the getArray function!");
			}

			FileWriter TempFW = (FileWriter) ObjectList.get(index);
			E[] resArr = factory.getNewArrayInstance((int) TempFW.get(SIZE));
			for(int it = 0; it < resArr.length; it++) {
				resArr[it] = factory.getNewInstance();
				resArr[it].loadFromFileWriter((FileWriter) TempFW.get(it + ""));
			}
			return resArr;
		}
		return null;
	}