partially updated with new results