bug fix for float corner case