protected Result parseInsruction(String nextInstruction) {
		
		String[] parsed = nextInstruction.split("\\s+");
		
		if (parsed.length > 4){
			return Result.createError(Errors.TOO_MANY_PARAMS, nextInstruction);
		}
		
		if(allowableCommands.contains(parsed[CMDINDX])){
			//further processing
			if ( "GET".equals(parsed[CMDINDX]) || "LATEST".equals(parsed[CMDINDX])){
				return processGetLatest(parsed);
			}
			
			if("CREATE".equals(parsed[CMDINDX]) || "UPDATE".equals(parsed[CMDINDX])){
				return processCreateUpdate(parsed);
			}
			
			if("DELETE".equals(parsed[CMDINDX])){
				return processDelete(parsed);
			}
			if("QUIT".equals(parsed[CMDINDX])){
				return Result.createError(Errors.TERMINATION, "");
			}
			
			System.out.println(parsed);
		}
		
		return Result.createError(Errors.INVALID_COMMAND, parsed[CMDINDX]);
	}