performance (make angular not do $digest so much)