plain cursor using existentials to hide refined types