abstract tutorial