Use shifts rather than floor