split to 3 runnables