rework view::slice