start reworking code
better slice handling