make task recursive