+-spec iter(t(K, V), fun((K, V) -> ok)) ->
+ ok.
+iter(T, F1) ->
+ F2 = lift_map(F1),
+ lists:foreach(F2, T).
+
+-spec map(t(K, V), fun((K, V) -> V)) ->
+ t(K, V).
+map(T, F1) ->
+ F2 = fun ({K, _}=X) -> {K, apply_map(F1, X)} end,
+ lists:map(F2, T).
+
+-spec filter(t(K, V), fun((K, V) -> boolean())) ->
+ t(K, V).
+filter(T, F1) ->
+ F2 = lift_map(F1),
+ lists:filter(F2, T).
+
+-spec fold(t(K, V), fun((K, V, Acc) -> Acc), Acc) ->
+ Acc.