add already run check
to so
task to so