docs: function deepExtend(destination) {
      angular.forEach(arguments, function (obj) {
          if (obj !== destination) {
              angular.forEach(obj, function (value, key) {
                  if (destination[key] && destination[key].constructor && destination[key].constructor === Object) {
                      deepExtend(destination[key], value);
                  } else {
                      destination[key] = value;
                  }
              });
          }
      });
      return angular.copy(destination);
  }