add support for slice