A friend of mine runs a pharmacy.   He has a specialized function in his Dispensary application which receives a decimal value of currency and replaces it to a standard value.   This value is regulated by a government department.



Task

Given a floating point value between   0.00   and   1.00,   rescale according to the following table:

>=  0.00  <  0.06  :=  0.10
>=  0.06  <  0.11  :=  0.18
>=  0.11  <  0.16  :=  0.26
>=  0.16  <  0.21  :=  0.32
>=  0.21  <  0.26  :=  0.38
>=  0.26  <  0.31  :=  0.44
>=  0.31  <  0.36  :=  0.50
>=  0.36  <  0.41  :=  0.54
>=  0.41  <  0.46  :=  0.58
>=  0.46  <  0.51  :=  0.62
>=  0.51  <  0.56  :=  0.66
>=  0.56  <  0.61  :=  0.70
>=  0.61  <  0.66  :=  0.74
>=  0.66  <  0.71  :=  0.78
>=  0.71  <  0.76  :=  0.82
>=  0.76  <  0.81  :=  0.86
>=  0.81  <  0.86  :=  0.90
>=  0.86  <  0.91  :=  0.94
>=  0.91  <  0.96  :=  0.98
>=  0.96  <  1.01  :=  1.00



(defun scale (value)
  (cond ((minusp value) (error "invalid value: ~A" value))
        ((< value 0.06) 0.10)
        ((< value 0.11) 0.18)
        ((< value 0.16) 0.26)
        ((< value 0.21) 0.32)
        ((< value 0.26) 0.38)
        ((< value 0.31) 0.44)
        ((< value 0.36) 0.50)
        ((< value 0.41) 0.54)
        ((< value 0.46) 0.58)
        ((< value 0.51) 0.62)
        ((< value 0.56) 0.66)
        ((< value 0.61) 0.70)
        ((< value 0.66) 0.74)
        ((< value 0.71) 0.78)
        ((< value 0.76) 0.82)
        ((< value 0.81) 0.86)
        ((< value 0.86) 0.90)
        ((< value 0.91) 0.94)
        ((< value 0.96) 0.98)
        ((< value 1.01) 1.00)
        (t (error "invalid value: ~A" value))))