complete slicing implementation