length reduction and small changes