reimplemented recording