PlaceInfo () { if (myForwardPlaces.isEmpty()) return null; PlaceInfo target = myForwardPlaces.removeLast(); PlaceInfo current = getCurrentPlaceInfo(); while (!myForwardPlaces.isEmpty()) { if (current != null && isSame(current, target)) { target = myForwardPlaces.removeLast(); } else { break; } } return target; }