returns >0 are not errors here