we really need separate on_path for apply