Cleaned up generation