add support for id shifting