fix bug with piston