fully functional timeline &  input validation