support negative step