public Person getPrevPerson(final Person person) {
		if (person != null) {
			logger.debug("(getPrevPerson) Looking for Person with ID < " + person.getId());

			for (int i = personStorage.entrySet().size() - 1; i >= 0; i--) {
				@SuppressWarnings("unchecked")
				final Map.Entry<Long, Person> map = (Entry<Long, Person>) personStorage.entrySet().toArray()[i];
				if (person.getId() == null || map.getKey() < person.getId()) {
					// ohne id wird die letzte Person zurückgeliefert
					final Person prevPerson = map.getValue();
					if (prevPerson != null) {
						logger.debug("getPrevPerson returns: " + prevPerson.getVorname() + " " + prevPerson.getNachname());
					}
					else {
						logger.debug("getPrevPerson could not find a Person - so null will be returned");
					}
					return prevPerson;
				}
			}
		}

		logger.debug("getPrevPerson was called with no reference Person - so null will be returend");

		return null;
	}