float casts make flibit very sad, but the compiler very happy