minor typos corrected, final version