add free term if it doesn't exist