add todo function