@NonNull
    public static List<String> getListHierarchy() {
        return withAccessLock(() -> {
            final Cursor c = database.rawQuery("SELECT DISTINCT RTRIM(title, REPLACE(title, ':', '')) FROM " + dbTableLists, new String[]{});
            final List<String> result = cursorToColl(c, new ArrayList<>(), GET_STRING_0);
            Collections.sort(result);
            return result;
        });
    }
Retrieve coordinates from a Cursor

@param cursor   a Cursor representing a row in the database
@param indexLat index of the latitude column
@param indexLon index of the longitude column
@return the coordinates, or null if latitude or longitude is null or the coordinates are invalid
main/src/main/java/cgeo/geocaching/storage/DataStore.java