add *Func helpers and track gdf