a few corrections and refinements