added slice, copy methods