added typed/untyped and cursor classes