add primitive tasks