Return errors, update add terms function