complete tutorial introduction