Updated and extended