Update with more Slice-like implementation