using subset cursor instead of randomaccessible