change to float but with bug