Updated with minor fixes.