fix middle floor calculation
implement strategies