Use CGFloat rather than float