add do functionad and help functions