typo corrected, and slightly extended