adding support to push, splice, slice and forEach