task functionality basics done