total can be 0, fixed