diff --git a/doc/props/P_AERIAL_HELPERS b/doc/props/P_AERIAL_HELPERS
index 781510c..7fbe8d0 100644
--- a/doc/props/P_AERIAL_HELPERS
+++ b/doc/props/P_AERIAL_HELPERS
@@ -18,32 +18,32 @@
 BESCHREIBUNG
 ============
 
-   Diese Property kann in allen Lebewesen abgefragt werden, um die Objekte
-   zu ermitteln, die fuer die Unterstuetzung beim Fliegen/Segeln bei diesem
-   Lebewesen registriert haben. Die Daten werden als Mapping der folgenden
-   Form zurueckgeliefert:
-   ([ Objekt : Rueckgabewert von dessen Callback-Methode ])
-   Eine Erlaeuterung dazu findet sich in der Dokumentation zu
-   RegisterHelperObject().
+   Diese Property kann in allen Lebewesen abgefragt werden, um die
+   Objekte zu ermitteln, die sich fuer die Unterstuetzung beim
+   Fliegen/Segeln bei diesem Lebewesen registriert haben. Die Daten
+   werden als Mapping der folgenden Form zurueckgeliefert: ([ Objekt :
+   Rueckgabewert von dessen Callback-Methode ]) Eine Erlaeuterung dazu
+   findet sich in der Dokumentation zu *RegisterHelperObject()*.
 
 
 BEMERKUNGEN
 ===========
 
-   Diese Property kann nur abgefragt werden.
-   Es ist erwuenscht, dass entsprechende, neu geschaffene Stellen jegliche
-   Helfer akzeptieren, deren Callback-Methode >0 zurueckgibt.
+   Diese Property kann nur abgefragt werden. Es ist erwuenscht, dass
+   entsprechende, neu geschaffene Stellen jegliche Helfer akzeptieren,
+   deren Callback-Methode >0 zurueckgibt.
 
 
 BEISPIEL
 ========
 
-   Um zu ermitteln, ob der Spieler mindestens ein Objekt bei sich hat, das
-   beim Fliegen hilft, sucht man alle Objekte aus dem Mapping heraus, die
-   einen Wert >0 eingetragen haben und prueft deren Anzahl:
+   Um zu ermitteln, ob der Spieler mindestens ein Objekt bei sich hat,
+   das beim Fliegen hilft, sucht man alle Objekte aus dem Mapping
+   heraus, die einen Wert >0 eingetragen haben und prueft deren
+   Anzahl:
 
    mapping aerial = this_player()->QueryProp(P_AERIAL_HELPERS);
-   object* helpers = filter( aerial, function int (object h) {
+   object* helpers = filter( m_indices(aerial), function int (object h) {
                        return (aerial[h]>0); });
    if ( sizeof(helpers) ) {
      tell_object(this_player(), "Du erhebst Dich mit Hilfe "+
@@ -57,7 +57,7 @@
 SIEHE AUCH
 ==========
 
-   Methoden:    RegisterHelperObject(L), UnregisterHelperObject(L)
-   Properties:  P_HELPER_OBJECTS, P_AQUATIC_HELPERS
+   Methoden:    *RegisterHelperObject()*, *UnregisterHelperObject()*
+   Properties:  *P_HELPER_OBJECTS*, *P_AQUATIC_HELPERS*
 
-12.03.2016, Arathorn
+04.02.2018, Arathorn
