update for performance