allow dense iterator