minor refactor
introduces cursor