weight shouldn't be float