implemented recording modes