// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// ignore_for_file: type=lint
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark

part of 'app_config.dart';

// **************************************************************************
// FreezedGenerator
// **************************************************************************

T _$identity<T>(T value) => value;

final _privateConstructorUsedError = UnsupportedError(
  'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models',
);

AppConfig _$AppConfigFromJson(Map<String, dynamic> json) {
  return _AppConfig.fromJson(json);
}

/// @nodoc
mixin _$AppConfig {
  List<String>? get apiIps => throw _privateConstructorUsedError;
  List<String>? get apiUrls => throw _privateConstructorUsedError;
  List<String>? get routerApiUrls => throw _privateConstructorUsedError;
  List<String>? get appStatUrls => throw _privateConstructorUsedError;
  List<String>? get assetUrls => throw _privateConstructorUsedError;
  List<String>? get logFileUploadUrls => throw _privateConstructorUsedError;
  List<String>? get realityApiUrls => throw _privateConstructorUsedError;
  List<String>? get realityAppStatUrls => throw _privateConstructorUsedError;
  List<String>? get realityLogFileUploadUrls =>
      throw _privateConstructorUsedError;
  bool? get autoPing => throw _privateConstructorUsedError;
  int? get autoPingInterval => throw _privateConstructorUsedError;
  List<String>? get backupApiUrls => throw _privateConstructorUsedError;
  int? get cacheDataEffectiveDays => throw _privateConstructorUsedError;
  List<Contacts>? get contacts => throw _privateConstructorUsedError;
  List<Contacts>? get follows => throw _privateConstructorUsedError;
  List<String>? get providers => throw _privateConstructorUsedError;
  List<int>? get signalThresholds => throw _privateConstructorUsedError;
  List<int>? get packetLossThresholds => throw _privateConstructorUsedError;
  SkipGeo? get skipGeo => throw _privateConstructorUsedError;
  List<SpeedTestTargetList>? get speedTestTargetList =>
      throw _privateConstructorUsedError;
  String? get websiteUrl => throw _privateConstructorUsedError;
  bool? get visitorDisabled => throw _privateConstructorUsedError; // 游客模式
  PrivacyTerms? get privacyAgreement => throw _privateConstructorUsedError;
  String? get email => throw _privateConstructorUsedError;
  List<String>? get blackPkgs => throw _privateConstructorUsedError;
  List<String>? get whitePkgs => throw _privateConstructorUsedError;
  int? get accelerationSampleCount => throw _privateConstructorUsedError;
  int? get minAccelerationSampleCount => throw _privateConstructorUsedError;
  int? get connectionWarningThreshold => throw _privateConstructorUsedError;
  String? get connectiveTestUrl => throw _privateConstructorUsedError;
  List<String>? get disabledLogModules => throw _privateConstructorUsedError;
  String? get realTimeDbPath => throw _privateConstructorUsedError;
  int? get boostTimeInterval => throw _privateConstructorUsedError;
  int? get pingDisplayMode => throw _privateConstructorUsedError;
  int? get peekTimeInterval => throw _privateConstructorUsedError;
  bool? get enableAd => throw _privateConstructorUsedError;
  int? get adTimeoutDuration => throw _privateConstructorUsedError;
  int? get reportActiveInterval => throw _privateConstructorUsedError;
  int? get serverTime => throw _privateConstructorUsedError;

  /// Serializes this AppConfig to a JSON map.
  Map<String, dynamic> toJson() => throw _privateConstructorUsedError;

  /// Create a copy of AppConfig
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  $AppConfigCopyWith<AppConfig> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $AppConfigCopyWith<$Res> {
  factory $AppConfigCopyWith(AppConfig value, $Res Function(AppConfig) then) =
      _$AppConfigCopyWithImpl<$Res, AppConfig>;
  @useResult
  $Res call({
    List<String>? apiIps,
    List<String>? apiUrls,
    List<String>? routerApiUrls,
    List<String>? appStatUrls,
    List<String>? assetUrls,
    List<String>? logFileUploadUrls,
    List<String>? realityApiUrls,
    List<String>? realityAppStatUrls,
    List<String>? realityLogFileUploadUrls,
    bool? autoPing,
    int? autoPingInterval,
    List<String>? backupApiUrls,
    int? cacheDataEffectiveDays,
    List<Contacts>? contacts,
    List<Contacts>? follows,
    List<String>? providers,
    List<int>? signalThresholds,
    List<int>? packetLossThresholds,
    SkipGeo? skipGeo,
    List<SpeedTestTargetList>? speedTestTargetList,
    String? websiteUrl,
    bool? visitorDisabled,
    PrivacyTerms? privacyAgreement,
    String? email,
    List<String>? blackPkgs,
    List<String>? whitePkgs,
    int? accelerationSampleCount,
    int? minAccelerationSampleCount,
    int? connectionWarningThreshold,
    String? connectiveTestUrl,
    List<String>? disabledLogModules,
    String? realTimeDbPath,
    int? boostTimeInterval,
    int? pingDisplayMode,
    int? peekTimeInterval,
    bool? enableAd,
    int? adTimeoutDuration,
    int? reportActiveInterval,
    int? serverTime,
  });
}

/// @nodoc
class _$AppConfigCopyWithImpl<$Res, $Val extends AppConfig>
    implements $AppConfigCopyWith<$Res> {
  _$AppConfigCopyWithImpl(this._value, this._then);

  // ignore: unused_field
  final $Val _value;
  // ignore: unused_field
  final $Res Function($Val) _then;

  /// Create a copy of AppConfig
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? apiIps = freezed,
    Object? apiUrls = freezed,
    Object? routerApiUrls = freezed,
    Object? appStatUrls = freezed,
    Object? assetUrls = freezed,
    Object? logFileUploadUrls = freezed,
    Object? realityApiUrls = freezed,
    Object? realityAppStatUrls = freezed,
    Object? realityLogFileUploadUrls = freezed,
    Object? autoPing = freezed,
    Object? autoPingInterval = freezed,
    Object? backupApiUrls = freezed,
    Object? cacheDataEffectiveDays = freezed,
    Object? contacts = freezed,
    Object? follows = freezed,
    Object? providers = freezed,
    Object? signalThresholds = freezed,
    Object? packetLossThresholds = freezed,
    Object? skipGeo = freezed,
    Object? speedTestTargetList = freezed,
    Object? websiteUrl = freezed,
    Object? visitorDisabled = freezed,
    Object? privacyAgreement = freezed,
    Object? email = freezed,
    Object? blackPkgs = freezed,
    Object? whitePkgs = freezed,
    Object? accelerationSampleCount = freezed,
    Object? minAccelerationSampleCount = freezed,
    Object? connectionWarningThreshold = freezed,
    Object? connectiveTestUrl = freezed,
    Object? disabledLogModules = freezed,
    Object? realTimeDbPath = freezed,
    Object? boostTimeInterval = freezed,
    Object? pingDisplayMode = freezed,
    Object? peekTimeInterval = freezed,
    Object? enableAd = freezed,
    Object? adTimeoutDuration = freezed,
    Object? reportActiveInterval = freezed,
    Object? serverTime = freezed,
  }) {
    return _then(
      _value.copyWith(
            apiIps: freezed == apiIps
                ? _value.apiIps
                : apiIps // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            apiUrls: freezed == apiUrls
                ? _value.apiUrls
                : apiUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            routerApiUrls: freezed == routerApiUrls
                ? _value.routerApiUrls
                : routerApiUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            appStatUrls: freezed == appStatUrls
                ? _value.appStatUrls
                : appStatUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            assetUrls: freezed == assetUrls
                ? _value.assetUrls
                : assetUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            logFileUploadUrls: freezed == logFileUploadUrls
                ? _value.logFileUploadUrls
                : logFileUploadUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            realityApiUrls: freezed == realityApiUrls
                ? _value.realityApiUrls
                : realityApiUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            realityAppStatUrls: freezed == realityAppStatUrls
                ? _value.realityAppStatUrls
                : realityAppStatUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            realityLogFileUploadUrls: freezed == realityLogFileUploadUrls
                ? _value.realityLogFileUploadUrls
                : realityLogFileUploadUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            autoPing: freezed == autoPing
                ? _value.autoPing
                : autoPing // ignore: cast_nullable_to_non_nullable
                      as bool?,
            autoPingInterval: freezed == autoPingInterval
                ? _value.autoPingInterval
                : autoPingInterval // ignore: cast_nullable_to_non_nullable
                      as int?,
            backupApiUrls: freezed == backupApiUrls
                ? _value.backupApiUrls
                : backupApiUrls // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            cacheDataEffectiveDays: freezed == cacheDataEffectiveDays
                ? _value.cacheDataEffectiveDays
                : cacheDataEffectiveDays // ignore: cast_nullable_to_non_nullable
                      as int?,
            contacts: freezed == contacts
                ? _value.contacts
                : contacts // ignore: cast_nullable_to_non_nullable
                      as List<Contacts>?,
            follows: freezed == follows
                ? _value.follows
                : follows // ignore: cast_nullable_to_non_nullable
                      as List<Contacts>?,
            providers: freezed == providers
                ? _value.providers
                : providers // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            signalThresholds: freezed == signalThresholds
                ? _value.signalThresholds
                : signalThresholds // ignore: cast_nullable_to_non_nullable
                      as List<int>?,
            packetLossThresholds: freezed == packetLossThresholds
                ? _value.packetLossThresholds
                : packetLossThresholds // ignore: cast_nullable_to_non_nullable
                      as List<int>?,
            skipGeo: freezed == skipGeo
                ? _value.skipGeo
                : skipGeo // ignore: cast_nullable_to_non_nullable
                      as SkipGeo?,
            speedTestTargetList: freezed == speedTestTargetList
                ? _value.speedTestTargetList
                : speedTestTargetList // ignore: cast_nullable_to_non_nullable
                      as List<SpeedTestTargetList>?,
            websiteUrl: freezed == websiteUrl
                ? _value.websiteUrl
                : websiteUrl // ignore: cast_nullable_to_non_nullable
                      as String?,
            visitorDisabled: freezed == visitorDisabled
                ? _value.visitorDisabled
                : visitorDisabled // ignore: cast_nullable_to_non_nullable
                      as bool?,
            privacyAgreement: freezed == privacyAgreement
                ? _value.privacyAgreement
                : privacyAgreement // ignore: cast_nullable_to_non_nullable
                      as PrivacyTerms?,
            email: freezed == email
                ? _value.email
                : email // ignore: cast_nullable_to_non_nullable
                      as String?,
            blackPkgs: freezed == blackPkgs
                ? _value.blackPkgs
                : blackPkgs // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            whitePkgs: freezed == whitePkgs
                ? _value.whitePkgs
                : whitePkgs // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            accelerationSampleCount: freezed == accelerationSampleCount
                ? _value.accelerationSampleCount
                : accelerationSampleCount // ignore: cast_nullable_to_non_nullable
                      as int?,
            minAccelerationSampleCount: freezed == minAccelerationSampleCount
                ? _value.minAccelerationSampleCount
                : minAccelerationSampleCount // ignore: cast_nullable_to_non_nullable
                      as int?,
            connectionWarningThreshold: freezed == connectionWarningThreshold
                ? _value.connectionWarningThreshold
                : connectionWarningThreshold // ignore: cast_nullable_to_non_nullable
                      as int?,
            connectiveTestUrl: freezed == connectiveTestUrl
                ? _value.connectiveTestUrl
                : connectiveTestUrl // ignore: cast_nullable_to_non_nullable
                      as String?,
            disabledLogModules: freezed == disabledLogModules
                ? _value.disabledLogModules
                : disabledLogModules // ignore: cast_nullable_to_non_nullable
                      as List<String>?,
            realTimeDbPath: freezed == realTimeDbPath
                ? _value.realTimeDbPath
                : realTimeDbPath // ignore: cast_nullable_to_non_nullable
                      as String?,
            boostTimeInterval: freezed == boostTimeInterval
                ? _value.boostTimeInterval
                : boostTimeInterval // ignore: cast_nullable_to_non_nullable
                      as int?,
            pingDisplayMode: freezed == pingDisplayMode
                ? _value.pingDisplayMode
                : pingDisplayMode // ignore: cast_nullable_to_non_nullable
                      as int?,
            peekTimeInterval: freezed == peekTimeInterval
                ? _value.peekTimeInterval
                : peekTimeInterval // ignore: cast_nullable_to_non_nullable
                      as int?,
            enableAd: freezed == enableAd
                ? _value.enableAd
                : enableAd // ignore: cast_nullable_to_non_nullable
                      as bool?,
            adTimeoutDuration: freezed == adTimeoutDuration
                ? _value.adTimeoutDuration
                : adTimeoutDuration // ignore: cast_nullable_to_non_nullable
                      as int?,
            reportActiveInterval: freezed == reportActiveInterval
                ? _value.reportActiveInterval
                : reportActiveInterval // ignore: cast_nullable_to_non_nullable
                      as int?,
            serverTime: freezed == serverTime
                ? _value.serverTime
                : serverTime // ignore: cast_nullable_to_non_nullable
                      as int?,
          )
          as $Val,
    );
  }
}

/// @nodoc
abstract class _$$AppConfigImplCopyWith<$Res>
    implements $AppConfigCopyWith<$Res> {
  factory _$$AppConfigImplCopyWith(
    _$AppConfigImpl value,
    $Res Function(_$AppConfigImpl) then,
  ) = __$$AppConfigImplCopyWithImpl<$Res>;
  @override
  @useResult
  $Res call({
    List<String>? apiIps,
    List<String>? apiUrls,
    List<String>? routerApiUrls,
    List<String>? appStatUrls,
    List<String>? assetUrls,
    List<String>? logFileUploadUrls,
    List<String>? realityApiUrls,
    List<String>? realityAppStatUrls,
    List<String>? realityLogFileUploadUrls,
    bool? autoPing,
    int? autoPingInterval,
    List<String>? backupApiUrls,
    int? cacheDataEffectiveDays,
    List<Contacts>? contacts,
    List<Contacts>? follows,
    List<String>? providers,
    List<int>? signalThresholds,
    List<int>? packetLossThresholds,
    SkipGeo? skipGeo,
    List<SpeedTestTargetList>? speedTestTargetList,
    String? websiteUrl,
    bool? visitorDisabled,
    PrivacyTerms? privacyAgreement,
    String? email,
    List<String>? blackPkgs,
    List<String>? whitePkgs,
    int? accelerationSampleCount,
    int? minAccelerationSampleCount,
    int? connectionWarningThreshold,
    String? connectiveTestUrl,
    List<String>? disabledLogModules,
    String? realTimeDbPath,
    int? boostTimeInterval,
    int? pingDisplayMode,
    int? peekTimeInterval,
    bool? enableAd,
    int? adTimeoutDuration,
    int? reportActiveInterval,
    int? serverTime,
  });
}

/// @nodoc
class __$$AppConfigImplCopyWithImpl<$Res>
    extends _$AppConfigCopyWithImpl<$Res, _$AppConfigImpl>
    implements _$$AppConfigImplCopyWith<$Res> {
  __$$AppConfigImplCopyWithImpl(
    _$AppConfigImpl _value,
    $Res Function(_$AppConfigImpl) _then,
  ) : super(_value, _then);

  /// Create a copy of AppConfig
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? apiIps = freezed,
    Object? apiUrls = freezed,
    Object? routerApiUrls = freezed,
    Object? appStatUrls = freezed,
    Object? assetUrls = freezed,
    Object? logFileUploadUrls = freezed,
    Object? realityApiUrls = freezed,
    Object? realityAppStatUrls = freezed,
    Object? realityLogFileUploadUrls = freezed,
    Object? autoPing = freezed,
    Object? autoPingInterval = freezed,
    Object? backupApiUrls = freezed,
    Object? cacheDataEffectiveDays = freezed,
    Object? contacts = freezed,
    Object? follows = freezed,
    Object? providers = freezed,
    Object? signalThresholds = freezed,
    Object? packetLossThresholds = freezed,
    Object? skipGeo = freezed,
    Object? speedTestTargetList = freezed,
    Object? websiteUrl = freezed,
    Object? visitorDisabled = freezed,
    Object? privacyAgreement = freezed,
    Object? email = freezed,
    Object? blackPkgs = freezed,
    Object? whitePkgs = freezed,
    Object? accelerationSampleCount = freezed,
    Object? minAccelerationSampleCount = freezed,
    Object? connectionWarningThreshold = freezed,
    Object? connectiveTestUrl = freezed,
    Object? disabledLogModules = freezed,
    Object? realTimeDbPath = freezed,
    Object? boostTimeInterval = freezed,
    Object? pingDisplayMode = freezed,
    Object? peekTimeInterval = freezed,
    Object? enableAd = freezed,
    Object? adTimeoutDuration = freezed,
    Object? reportActiveInterval = freezed,
    Object? serverTime = freezed,
  }) {
    return _then(
      _$AppConfigImpl(
        apiIps: freezed == apiIps
            ? _value._apiIps
            : apiIps // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        apiUrls: freezed == apiUrls
            ? _value._apiUrls
            : apiUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        routerApiUrls: freezed == routerApiUrls
            ? _value._routerApiUrls
            : routerApiUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        appStatUrls: freezed == appStatUrls
            ? _value._appStatUrls
            : appStatUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        assetUrls: freezed == assetUrls
            ? _value._assetUrls
            : assetUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        logFileUploadUrls: freezed == logFileUploadUrls
            ? _value._logFileUploadUrls
            : logFileUploadUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        realityApiUrls: freezed == realityApiUrls
            ? _value._realityApiUrls
            : realityApiUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        realityAppStatUrls: freezed == realityAppStatUrls
            ? _value._realityAppStatUrls
            : realityAppStatUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        realityLogFileUploadUrls: freezed == realityLogFileUploadUrls
            ? _value._realityLogFileUploadUrls
            : realityLogFileUploadUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        autoPing: freezed == autoPing
            ? _value.autoPing
            : autoPing // ignore: cast_nullable_to_non_nullable
                  as bool?,
        autoPingInterval: freezed == autoPingInterval
            ? _value.autoPingInterval
            : autoPingInterval // ignore: cast_nullable_to_non_nullable
                  as int?,
        backupApiUrls: freezed == backupApiUrls
            ? _value._backupApiUrls
            : backupApiUrls // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        cacheDataEffectiveDays: freezed == cacheDataEffectiveDays
            ? _value.cacheDataEffectiveDays
            : cacheDataEffectiveDays // ignore: cast_nullable_to_non_nullable
                  as int?,
        contacts: freezed == contacts
            ? _value._contacts
            : contacts // ignore: cast_nullable_to_non_nullable
                  as List<Contacts>?,
        follows: freezed == follows
            ? _value._follows
            : follows // ignore: cast_nullable_to_non_nullable
                  as List<Contacts>?,
        providers: freezed == providers
            ? _value._providers
            : providers // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        signalThresholds: freezed == signalThresholds
            ? _value._signalThresholds
            : signalThresholds // ignore: cast_nullable_to_non_nullable
                  as List<int>?,
        packetLossThresholds: freezed == packetLossThresholds
            ? _value._packetLossThresholds
            : packetLossThresholds // ignore: cast_nullable_to_non_nullable
                  as List<int>?,
        skipGeo: freezed == skipGeo
            ? _value.skipGeo
            : skipGeo // ignore: cast_nullable_to_non_nullable
                  as SkipGeo?,
        speedTestTargetList: freezed == speedTestTargetList
            ? _value._speedTestTargetList
            : speedTestTargetList // ignore: cast_nullable_to_non_nullable
                  as List<SpeedTestTargetList>?,
        websiteUrl: freezed == websiteUrl
            ? _value.websiteUrl
            : websiteUrl // ignore: cast_nullable_to_non_nullable
                  as String?,
        visitorDisabled: freezed == visitorDisabled
            ? _value.visitorDisabled
            : visitorDisabled // ignore: cast_nullable_to_non_nullable
                  as bool?,
        privacyAgreement: freezed == privacyAgreement
            ? _value.privacyAgreement
            : privacyAgreement // ignore: cast_nullable_to_non_nullable
                  as PrivacyTerms?,
        email: freezed == email
            ? _value.email
            : email // ignore: cast_nullable_to_non_nullable
                  as String?,
        blackPkgs: freezed == blackPkgs
            ? _value._blackPkgs
            : blackPkgs // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        whitePkgs: freezed == whitePkgs
            ? _value._whitePkgs
            : whitePkgs // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        accelerationSampleCount: freezed == accelerationSampleCount
            ? _value.accelerationSampleCount
            : accelerationSampleCount // ignore: cast_nullable_to_non_nullable
                  as int?,
        minAccelerationSampleCount: freezed == minAccelerationSampleCount
            ? _value.minAccelerationSampleCount
            : minAccelerationSampleCount // ignore: cast_nullable_to_non_nullable
                  as int?,
        connectionWarningThreshold: freezed == connectionWarningThreshold
            ? _value.connectionWarningThreshold
            : connectionWarningThreshold // ignore: cast_nullable_to_non_nullable
                  as int?,
        connectiveTestUrl: freezed == connectiveTestUrl
            ? _value.connectiveTestUrl
            : connectiveTestUrl // ignore: cast_nullable_to_non_nullable
                  as String?,
        disabledLogModules: freezed == disabledLogModules
            ? _value._disabledLogModules
            : disabledLogModules // ignore: cast_nullable_to_non_nullable
                  as List<String>?,
        realTimeDbPath: freezed == realTimeDbPath
            ? _value.realTimeDbPath
            : realTimeDbPath // ignore: cast_nullable_to_non_nullable
                  as String?,
        boostTimeInterval: freezed == boostTimeInterval
            ? _value.boostTimeInterval
            : boostTimeInterval // ignore: cast_nullable_to_non_nullable
                  as int?,
        pingDisplayMode: freezed == pingDisplayMode
            ? _value.pingDisplayMode
            : pingDisplayMode // ignore: cast_nullable_to_non_nullable
                  as int?,
        peekTimeInterval: freezed == peekTimeInterval
            ? _value.peekTimeInterval
            : peekTimeInterval // ignore: cast_nullable_to_non_nullable
                  as int?,
        enableAd: freezed == enableAd
            ? _value.enableAd
            : enableAd // ignore: cast_nullable_to_non_nullable
                  as bool?,
        adTimeoutDuration: freezed == adTimeoutDuration
            ? _value.adTimeoutDuration
            : adTimeoutDuration // ignore: cast_nullable_to_non_nullable
                  as int?,
        reportActiveInterval: freezed == reportActiveInterval
            ? _value.reportActiveInterval
            : reportActiveInterval // ignore: cast_nullable_to_non_nullable
                  as int?,
        serverTime: freezed == serverTime
            ? _value.serverTime
            : serverTime // ignore: cast_nullable_to_non_nullable
                  as int?,
      ),
    );
  }
}

/// @nodoc
@JsonSerializable()
class _$AppConfigImpl with DiagnosticableTreeMixin implements _AppConfig {
  const _$AppConfigImpl({
    final List<String>? apiIps,
    final List<String>? apiUrls,
    final List<String>? routerApiUrls,
    final List<String>? appStatUrls,
    final List<String>? assetUrls,
    final List<String>? logFileUploadUrls,
    final List<String>? realityApiUrls,
    final List<String>? realityAppStatUrls,
    final List<String>? realityLogFileUploadUrls,
    this.autoPing,
    this.autoPingInterval,
    final List<String>? backupApiUrls,
    this.cacheDataEffectiveDays,
    final List<Contacts>? contacts,
    final List<Contacts>? follows,
    final List<String>? providers,
    final List<int>? signalThresholds,
    final List<int>? packetLossThresholds,
    this.skipGeo,
    final List<SpeedTestTargetList>? speedTestTargetList,
    this.websiteUrl,
    this.visitorDisabled,
    this.privacyAgreement,
    this.email,
    final List<String>? blackPkgs,
    final List<String>? whitePkgs,
    this.accelerationSampleCount,
    this.minAccelerationSampleCount,
    this.connectionWarningThreshold,
    this.connectiveTestUrl,
    final List<String>? disabledLogModules,
    this.realTimeDbPath,
    this.boostTimeInterval,
    this.pingDisplayMode,
    this.peekTimeInterval,
    this.enableAd,
    this.adTimeoutDuration,
    this.reportActiveInterval,
    this.serverTime,
  }) : _apiIps = apiIps,
       _apiUrls = apiUrls,
       _routerApiUrls = routerApiUrls,
       _appStatUrls = appStatUrls,
       _assetUrls = assetUrls,
       _logFileUploadUrls = logFileUploadUrls,
       _realityApiUrls = realityApiUrls,
       _realityAppStatUrls = realityAppStatUrls,
       _realityLogFileUploadUrls = realityLogFileUploadUrls,
       _backupApiUrls = backupApiUrls,
       _contacts = contacts,
       _follows = follows,
       _providers = providers,
       _signalThresholds = signalThresholds,
       _packetLossThresholds = packetLossThresholds,
       _speedTestTargetList = speedTestTargetList,
       _blackPkgs = blackPkgs,
       _whitePkgs = whitePkgs,
       _disabledLogModules = disabledLogModules;

  factory _$AppConfigImpl.fromJson(Map<String, dynamic> json) =>
      _$$AppConfigImplFromJson(json);

  final List<String>? _apiIps;
  @override
  List<String>? get apiIps {
    final value = _apiIps;
    if (value == null) return null;
    if (_apiIps is EqualUnmodifiableListView) return _apiIps;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _apiUrls;
  @override
  List<String>? get apiUrls {
    final value = _apiUrls;
    if (value == null) return null;
    if (_apiUrls is EqualUnmodifiableListView) return _apiUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _routerApiUrls;
  @override
  List<String>? get routerApiUrls {
    final value = _routerApiUrls;
    if (value == null) return null;
    if (_routerApiUrls is EqualUnmodifiableListView) return _routerApiUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _appStatUrls;
  @override
  List<String>? get appStatUrls {
    final value = _appStatUrls;
    if (value == null) return null;
    if (_appStatUrls is EqualUnmodifiableListView) return _appStatUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _assetUrls;
  @override
  List<String>? get assetUrls {
    final value = _assetUrls;
    if (value == null) return null;
    if (_assetUrls is EqualUnmodifiableListView) return _assetUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _logFileUploadUrls;
  @override
  List<String>? get logFileUploadUrls {
    final value = _logFileUploadUrls;
    if (value == null) return null;
    if (_logFileUploadUrls is EqualUnmodifiableListView)
      return _logFileUploadUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _realityApiUrls;
  @override
  List<String>? get realityApiUrls {
    final value = _realityApiUrls;
    if (value == null) return null;
    if (_realityApiUrls is EqualUnmodifiableListView) return _realityApiUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _realityAppStatUrls;
  @override
  List<String>? get realityAppStatUrls {
    final value = _realityAppStatUrls;
    if (value == null) return null;
    if (_realityAppStatUrls is EqualUnmodifiableListView)
      return _realityAppStatUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _realityLogFileUploadUrls;
  @override
  List<String>? get realityLogFileUploadUrls {
    final value = _realityLogFileUploadUrls;
    if (value == null) return null;
    if (_realityLogFileUploadUrls is EqualUnmodifiableListView)
      return _realityLogFileUploadUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  @override
  final bool? autoPing;
  @override
  final int? autoPingInterval;
  final List<String>? _backupApiUrls;
  @override
  List<String>? get backupApiUrls {
    final value = _backupApiUrls;
    if (value == null) return null;
    if (_backupApiUrls is EqualUnmodifiableListView) return _backupApiUrls;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  @override
  final int? cacheDataEffectiveDays;
  final List<Contacts>? _contacts;
  @override
  List<Contacts>? get contacts {
    final value = _contacts;
    if (value == null) return null;
    if (_contacts is EqualUnmodifiableListView) return _contacts;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<Contacts>? _follows;
  @override
  List<Contacts>? get follows {
    final value = _follows;
    if (value == null) return null;
    if (_follows is EqualUnmodifiableListView) return _follows;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _providers;
  @override
  List<String>? get providers {
    final value = _providers;
    if (value == null) return null;
    if (_providers is EqualUnmodifiableListView) return _providers;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<int>? _signalThresholds;
  @override
  List<int>? get signalThresholds {
    final value = _signalThresholds;
    if (value == null) return null;
    if (_signalThresholds is EqualUnmodifiableListView)
      return _signalThresholds;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<int>? _packetLossThresholds;
  @override
  List<int>? get packetLossThresholds {
    final value = _packetLossThresholds;
    if (value == null) return null;
    if (_packetLossThresholds is EqualUnmodifiableListView)
      return _packetLossThresholds;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  @override
  final SkipGeo? skipGeo;
  final List<SpeedTestTargetList>? _speedTestTargetList;
  @override
  List<SpeedTestTargetList>? get speedTestTargetList {
    final value = _speedTestTargetList;
    if (value == null) return null;
    if (_speedTestTargetList is EqualUnmodifiableListView)
      return _speedTestTargetList;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  @override
  final String? websiteUrl;
  @override
  final bool? visitorDisabled;
  // 游客模式
  @override
  final PrivacyTerms? privacyAgreement;
  @override
  final String? email;
  final List<String>? _blackPkgs;
  @override
  List<String>? get blackPkgs {
    final value = _blackPkgs;
    if (value == null) return null;
    if (_blackPkgs is EqualUnmodifiableListView) return _blackPkgs;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  final List<String>? _whitePkgs;
  @override
  List<String>? get whitePkgs {
    final value = _whitePkgs;
    if (value == null) return null;
    if (_whitePkgs is EqualUnmodifiableListView) return _whitePkgs;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  @override
  final int? accelerationSampleCount;
  @override
  final int? minAccelerationSampleCount;
  @override
  final int? connectionWarningThreshold;
  @override
  final String? connectiveTestUrl;
  final List<String>? _disabledLogModules;
  @override
  List<String>? get disabledLogModules {
    final value = _disabledLogModules;
    if (value == null) return null;
    if (_disabledLogModules is EqualUnmodifiableListView)
      return _disabledLogModules;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  @override
  final String? realTimeDbPath;
  @override
  final int? boostTimeInterval;
  @override
  final int? pingDisplayMode;
  @override
  final int? peekTimeInterval;
  @override
  final bool? enableAd;
  @override
  final int? adTimeoutDuration;
  @override
  final int? reportActiveInterval;
  @override
  final int? serverTime;

  @override
  String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) {
    return 'AppConfig(apiIps: $apiIps, apiUrls: $apiUrls, routerApiUrls: $routerApiUrls, appStatUrls: $appStatUrls, assetUrls: $assetUrls, logFileUploadUrls: $logFileUploadUrls, realityApiUrls: $realityApiUrls, realityAppStatUrls: $realityAppStatUrls, realityLogFileUploadUrls: $realityLogFileUploadUrls, autoPing: $autoPing, autoPingInterval: $autoPingInterval, backupApiUrls: $backupApiUrls, cacheDataEffectiveDays: $cacheDataEffectiveDays, contacts: $contacts, follows: $follows, providers: $providers, signalThresholds: $signalThresholds, packetLossThresholds: $packetLossThresholds, skipGeo: $skipGeo, speedTestTargetList: $speedTestTargetList, websiteUrl: $websiteUrl, visitorDisabled: $visitorDisabled, privacyAgreement: $privacyAgreement, email: $email, blackPkgs: $blackPkgs, whitePkgs: $whitePkgs, accelerationSampleCount: $accelerationSampleCount, minAccelerationSampleCount: $minAccelerationSampleCount, connectionWarningThreshold: $connectionWarningThreshold, connectiveTestUrl: $connectiveTestUrl, disabledLogModules: $disabledLogModules, realTimeDbPath: $realTimeDbPath, boostTimeInterval: $boostTimeInterval, pingDisplayMode: $pingDisplayMode, peekTimeInterval: $peekTimeInterval, enableAd: $enableAd, adTimeoutDuration: $adTimeoutDuration, reportActiveInterval: $reportActiveInterval, serverTime: $serverTime)';
  }

  @override
  void debugFillProperties(DiagnosticPropertiesBuilder properties) {
    super.debugFillProperties(properties);
    properties
      ..add(DiagnosticsProperty('type', 'AppConfig'))
      ..add(DiagnosticsProperty('apiIps', apiIps))
      ..add(DiagnosticsProperty('apiUrls', apiUrls))
      ..add(DiagnosticsProperty('routerApiUrls', routerApiUrls))
      ..add(DiagnosticsProperty('appStatUrls', appStatUrls))
      ..add(DiagnosticsProperty('assetUrls', assetUrls))
      ..add(DiagnosticsProperty('logFileUploadUrls', logFileUploadUrls))
      ..add(DiagnosticsProperty('realityApiUrls', realityApiUrls))
      ..add(DiagnosticsProperty('realityAppStatUrls', realityAppStatUrls))
      ..add(
        DiagnosticsProperty(
          'realityLogFileUploadUrls',
          realityLogFileUploadUrls,
        ),
      )
      ..add(DiagnosticsProperty('autoPing', autoPing))
      ..add(DiagnosticsProperty('autoPingInterval', autoPingInterval))
      ..add(DiagnosticsProperty('backupApiUrls', backupApiUrls))
      ..add(
        DiagnosticsProperty('cacheDataEffectiveDays', cacheDataEffectiveDays),
      )
      ..add(DiagnosticsProperty('contacts', contacts))
      ..add(DiagnosticsProperty('follows', follows))
      ..add(DiagnosticsProperty('providers', providers))
      ..add(DiagnosticsProperty('signalThresholds', signalThresholds))
      ..add(DiagnosticsProperty('packetLossThresholds', packetLossThresholds))
      ..add(DiagnosticsProperty('skipGeo', skipGeo))
      ..add(DiagnosticsProperty('speedTestTargetList', speedTestTargetList))
      ..add(DiagnosticsProperty('websiteUrl', websiteUrl))
      ..add(DiagnosticsProperty('visitorDisabled', visitorDisabled))
      ..add(DiagnosticsProperty('privacyAgreement', privacyAgreement))
      ..add(DiagnosticsProperty('email', email))
      ..add(DiagnosticsProperty('blackPkgs', blackPkgs))
      ..add(DiagnosticsProperty('whitePkgs', whitePkgs))
      ..add(
        DiagnosticsProperty('accelerationSampleCount', accelerationSampleCount),
      )
      ..add(
        DiagnosticsProperty(
          'minAccelerationSampleCount',
          minAccelerationSampleCount,
        ),
      )
      ..add(
        DiagnosticsProperty(
          'connectionWarningThreshold',
          connectionWarningThreshold,
        ),
      )
      ..add(DiagnosticsProperty('connectiveTestUrl', connectiveTestUrl))
      ..add(DiagnosticsProperty('disabledLogModules', disabledLogModules))
      ..add(DiagnosticsProperty('realTimeDbPath', realTimeDbPath))
      ..add(DiagnosticsProperty('boostTimeInterval', boostTimeInterval))
      ..add(DiagnosticsProperty('pingDisplayMode', pingDisplayMode))
      ..add(DiagnosticsProperty('peekTimeInterval', peekTimeInterval))
      ..add(DiagnosticsProperty('enableAd', enableAd))
      ..add(DiagnosticsProperty('adTimeoutDuration', adTimeoutDuration))
      ..add(DiagnosticsProperty('reportActiveInterval', reportActiveInterval))
      ..add(DiagnosticsProperty('serverTime', serverTime));
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$AppConfigImpl &&
            const DeepCollectionEquality().equals(other._apiIps, _apiIps) &&
            const DeepCollectionEquality().equals(other._apiUrls, _apiUrls) &&
            const DeepCollectionEquality().equals(
              other._routerApiUrls,
              _routerApiUrls,
            ) &&
            const DeepCollectionEquality().equals(
              other._appStatUrls,
              _appStatUrls,
            ) &&
            const DeepCollectionEquality().equals(
              other._assetUrls,
              _assetUrls,
            ) &&
            const DeepCollectionEquality().equals(
              other._logFileUploadUrls,
              _logFileUploadUrls,
            ) &&
            const DeepCollectionEquality().equals(
              other._realityApiUrls,
              _realityApiUrls,
            ) &&
            const DeepCollectionEquality().equals(
              other._realityAppStatUrls,
              _realityAppStatUrls,
            ) &&
            const DeepCollectionEquality().equals(
              other._realityLogFileUploadUrls,
              _realityLogFileUploadUrls,
            ) &&
            (identical(other.autoPing, autoPing) ||
                other.autoPing == autoPing) &&
            (identical(other.autoPingInterval, autoPingInterval) ||
                other.autoPingInterval == autoPingInterval) &&
            const DeepCollectionEquality().equals(
              other._backupApiUrls,
              _backupApiUrls,
            ) &&
            (identical(other.cacheDataEffectiveDays, cacheDataEffectiveDays) ||
                other.cacheDataEffectiveDays == cacheDataEffectiveDays) &&
            const DeepCollectionEquality().equals(other._contacts, _contacts) &&
            const DeepCollectionEquality().equals(other._follows, _follows) &&
            const DeepCollectionEquality().equals(
              other._providers,
              _providers,
            ) &&
            const DeepCollectionEquality().equals(
              other._signalThresholds,
              _signalThresholds,
            ) &&
            const DeepCollectionEquality().equals(
              other._packetLossThresholds,
              _packetLossThresholds,
            ) &&
            (identical(other.skipGeo, skipGeo) || other.skipGeo == skipGeo) &&
            const DeepCollectionEquality().equals(
              other._speedTestTargetList,
              _speedTestTargetList,
            ) &&
            (identical(other.websiteUrl, websiteUrl) ||
                other.websiteUrl == websiteUrl) &&
            (identical(other.visitorDisabled, visitorDisabled) ||
                other.visitorDisabled == visitorDisabled) &&
            (identical(other.privacyAgreement, privacyAgreement) ||
                other.privacyAgreement == privacyAgreement) &&
            (identical(other.email, email) || other.email == email) &&
            const DeepCollectionEquality().equals(
              other._blackPkgs,
              _blackPkgs,
            ) &&
            const DeepCollectionEquality().equals(
              other._whitePkgs,
              _whitePkgs,
            ) &&
            (identical(
                  other.accelerationSampleCount,
                  accelerationSampleCount,
                ) ||
                other.accelerationSampleCount == accelerationSampleCount) &&
            (identical(
                  other.minAccelerationSampleCount,
                  minAccelerationSampleCount,
                ) ||
                other.minAccelerationSampleCount ==
                    minAccelerationSampleCount) &&
            (identical(
                  other.connectionWarningThreshold,
                  connectionWarningThreshold,
                ) ||
                other.connectionWarningThreshold ==
                    connectionWarningThreshold) &&
            (identical(other.connectiveTestUrl, connectiveTestUrl) ||
                other.connectiveTestUrl == connectiveTestUrl) &&
            const DeepCollectionEquality().equals(
              other._disabledLogModules,
              _disabledLogModules,
            ) &&
            (identical(other.realTimeDbPath, realTimeDbPath) ||
                other.realTimeDbPath == realTimeDbPath) &&
            (identical(other.boostTimeInterval, boostTimeInterval) ||
                other.boostTimeInterval == boostTimeInterval) &&
            (identical(other.pingDisplayMode, pingDisplayMode) ||
                other.pingDisplayMode == pingDisplayMode) &&
            (identical(other.peekTimeInterval, peekTimeInterval) ||
                other.peekTimeInterval == peekTimeInterval) &&
            (identical(other.enableAd, enableAd) ||
                other.enableAd == enableAd) &&
            (identical(other.adTimeoutDuration, adTimeoutDuration) ||
                other.adTimeoutDuration == adTimeoutDuration) &&
            (identical(other.reportActiveInterval, reportActiveInterval) ||
                other.reportActiveInterval == reportActiveInterval) &&
            (identical(other.serverTime, serverTime) ||
                other.serverTime == serverTime));
  }

  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  int get hashCode => Object.hashAll([
    runtimeType,
    const DeepCollectionEquality().hash(_apiIps),
    const DeepCollectionEquality().hash(_apiUrls),
    const DeepCollectionEquality().hash(_routerApiUrls),
    const DeepCollectionEquality().hash(_appStatUrls),
    const DeepCollectionEquality().hash(_assetUrls),
    const DeepCollectionEquality().hash(_logFileUploadUrls),
    const DeepCollectionEquality().hash(_realityApiUrls),
    const DeepCollectionEquality().hash(_realityAppStatUrls),
    const DeepCollectionEquality().hash(_realityLogFileUploadUrls),
    autoPing,
    autoPingInterval,
    const DeepCollectionEquality().hash(_backupApiUrls),
    cacheDataEffectiveDays,
    const DeepCollectionEquality().hash(_contacts),
    const DeepCollectionEquality().hash(_follows),
    const DeepCollectionEquality().hash(_providers),
    const DeepCollectionEquality().hash(_signalThresholds),
    const DeepCollectionEquality().hash(_packetLossThresholds),
    skipGeo,
    const DeepCollectionEquality().hash(_speedTestTargetList),
    websiteUrl,
    visitorDisabled,
    privacyAgreement,
    email,
    const DeepCollectionEquality().hash(_blackPkgs),
    const DeepCollectionEquality().hash(_whitePkgs),
    accelerationSampleCount,
    minAccelerationSampleCount,
    connectionWarningThreshold,
    connectiveTestUrl,
    const DeepCollectionEquality().hash(_disabledLogModules),
    realTimeDbPath,
    boostTimeInterval,
    pingDisplayMode,
    peekTimeInterval,
    enableAd,
    adTimeoutDuration,
    reportActiveInterval,
    serverTime,
  ]);

  /// Create a copy of AppConfig
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$AppConfigImplCopyWith<_$AppConfigImpl> get copyWith =>
      __$$AppConfigImplCopyWithImpl<_$AppConfigImpl>(this, _$identity);

  @override
  Map<String, dynamic> toJson() {
    return _$$AppConfigImplToJson(this);
  }
}

abstract class _AppConfig implements AppConfig {
  const factory _AppConfig({
    final List<String>? apiIps,
    final List<String>? apiUrls,
    final List<String>? routerApiUrls,
    final List<String>? appStatUrls,
    final List<String>? assetUrls,
    final List<String>? logFileUploadUrls,
    final List<String>? realityApiUrls,
    final List<String>? realityAppStatUrls,
    final List<String>? realityLogFileUploadUrls,
    final bool? autoPing,
    final int? autoPingInterval,
    final List<String>? backupApiUrls,
    final int? cacheDataEffectiveDays,
    final List<Contacts>? contacts,
    final List<Contacts>? follows,
    final List<String>? providers,
    final List<int>? signalThresholds,
    final List<int>? packetLossThresholds,
    final SkipGeo? skipGeo,
    final List<SpeedTestTargetList>? speedTestTargetList,
    final String? websiteUrl,
    final bool? visitorDisabled,
    final PrivacyTerms? privacyAgreement,
    final String? email,
    final List<String>? blackPkgs,
    final List<String>? whitePkgs,
    final int? accelerationSampleCount,
    final int? minAccelerationSampleCount,
    final int? connectionWarningThreshold,
    final String? connectiveTestUrl,
    final List<String>? disabledLogModules,
    final String? realTimeDbPath,
    final int? boostTimeInterval,
    final int? pingDisplayMode,
    final int? peekTimeInterval,
    final bool? enableAd,
    final int? adTimeoutDuration,
    final int? reportActiveInterval,
    final int? serverTime,
  }) = _$AppConfigImpl;

  factory _AppConfig.fromJson(Map<String, dynamic> json) =
      _$AppConfigImpl.fromJson;

  @override
  List<String>? get apiIps;
  @override
  List<String>? get apiUrls;
  @override
  List<String>? get routerApiUrls;
  @override
  List<String>? get appStatUrls;
  @override
  List<String>? get assetUrls;
  @override
  List<String>? get logFileUploadUrls;
  @override
  List<String>? get realityApiUrls;
  @override
  List<String>? get realityAppStatUrls;
  @override
  List<String>? get realityLogFileUploadUrls;
  @override
  bool? get autoPing;
  @override
  int? get autoPingInterval;
  @override
  List<String>? get backupApiUrls;
  @override
  int? get cacheDataEffectiveDays;
  @override
  List<Contacts>? get contacts;
  @override
  List<Contacts>? get follows;
  @override
  List<String>? get providers;
  @override
  List<int>? get signalThresholds;
  @override
  List<int>? get packetLossThresholds;
  @override
  SkipGeo? get skipGeo;
  @override
  List<SpeedTestTargetList>? get speedTestTargetList;
  @override
  String? get websiteUrl;
  @override
  bool? get visitorDisabled; // 游客模式
  @override
  PrivacyTerms? get privacyAgreement;
  @override
  String? get email;
  @override
  List<String>? get blackPkgs;
  @override
  List<String>? get whitePkgs;
  @override
  int? get accelerationSampleCount;
  @override
  int? get minAccelerationSampleCount;
  @override
  int? get connectionWarningThreshold;
  @override
  String? get connectiveTestUrl;
  @override
  List<String>? get disabledLogModules;
  @override
  String? get realTimeDbPath;
  @override
  int? get boostTimeInterval;
  @override
  int? get pingDisplayMode;
  @override
  int? get peekTimeInterval;
  @override
  bool? get enableAd;
  @override
  int? get adTimeoutDuration;
  @override
  int? get reportActiveInterval;
  @override
  int? get serverTime;

  /// Create a copy of AppConfig
  /// with the given fields replaced by the non-null parameter values.
  @override
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$AppConfigImplCopyWith<_$AppConfigImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

Contacts _$ContactsFromJson(Map<String, dynamic> json) {
  return _Contacts.fromJson(json);
}

/// @nodoc
mixin _$Contacts {
  String? get title => throw _privateConstructorUsedError;
  String? get url => throw _privateConstructorUsedError;

  /// Serializes this Contacts to a JSON map.
  Map<String, dynamic> toJson() => throw _privateConstructorUsedError;

  /// Create a copy of Contacts
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  $ContactsCopyWith<Contacts> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $ContactsCopyWith<$Res> {
  factory $ContactsCopyWith(Contacts value, $Res Function(Contacts) then) =
      _$ContactsCopyWithImpl<$Res, Contacts>;
  @useResult
  $Res call({String? title, String? url});
}

/// @nodoc
class _$ContactsCopyWithImpl<$Res, $Val extends Contacts>
    implements $ContactsCopyWith<$Res> {
  _$ContactsCopyWithImpl(this._value, this._then);

  // ignore: unused_field
  final $Val _value;
  // ignore: unused_field
  final $Res Function($Val) _then;

  /// Create a copy of Contacts
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({Object? title = freezed, Object? url = freezed}) {
    return _then(
      _value.copyWith(
            title: freezed == title
                ? _value.title
                : title // ignore: cast_nullable_to_non_nullable
                      as String?,
            url: freezed == url
                ? _value.url
                : url // ignore: cast_nullable_to_non_nullable
                      as String?,
          )
          as $Val,
    );
  }
}

/// @nodoc
abstract class _$$ContactsImplCopyWith<$Res>
    implements $ContactsCopyWith<$Res> {
  factory _$$ContactsImplCopyWith(
    _$ContactsImpl value,
    $Res Function(_$ContactsImpl) then,
  ) = __$$ContactsImplCopyWithImpl<$Res>;
  @override
  @useResult
  $Res call({String? title, String? url});
}

/// @nodoc
class __$$ContactsImplCopyWithImpl<$Res>
    extends _$ContactsCopyWithImpl<$Res, _$ContactsImpl>
    implements _$$ContactsImplCopyWith<$Res> {
  __$$ContactsImplCopyWithImpl(
    _$ContactsImpl _value,
    $Res Function(_$ContactsImpl) _then,
  ) : super(_value, _then);

  /// Create a copy of Contacts
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({Object? title = freezed, Object? url = freezed}) {
    return _then(
      _$ContactsImpl(
        title: freezed == title
            ? _value.title
            : title // ignore: cast_nullable_to_non_nullable
                  as String?,
        url: freezed == url
            ? _value.url
            : url // ignore: cast_nullable_to_non_nullable
                  as String?,
      ),
    );
  }
}

/// @nodoc
@JsonSerializable()
class _$ContactsImpl with DiagnosticableTreeMixin implements _Contacts {
  const _$ContactsImpl({this.title, this.url});

  factory _$ContactsImpl.fromJson(Map<String, dynamic> json) =>
      _$$ContactsImplFromJson(json);

  @override
  final String? title;
  @override
  final String? url;

  @override
  String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) {
    return 'Contacts(title: $title, url: $url)';
  }

  @override
  void debugFillProperties(DiagnosticPropertiesBuilder properties) {
    super.debugFillProperties(properties);
    properties
      ..add(DiagnosticsProperty('type', 'Contacts'))
      ..add(DiagnosticsProperty('title', title))
      ..add(DiagnosticsProperty('url', url));
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$ContactsImpl &&
            (identical(other.title, title) || other.title == title) &&
            (identical(other.url, url) || other.url == url));
  }

  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  int get hashCode => Object.hash(runtimeType, title, url);

  /// Create a copy of Contacts
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$ContactsImplCopyWith<_$ContactsImpl> get copyWith =>
      __$$ContactsImplCopyWithImpl<_$ContactsImpl>(this, _$identity);

  @override
  Map<String, dynamic> toJson() {
    return _$$ContactsImplToJson(this);
  }
}

abstract class _Contacts implements Contacts {
  const factory _Contacts({final String? title, final String? url}) =
      _$ContactsImpl;

  factory _Contacts.fromJson(Map<String, dynamic> json) =
      _$ContactsImpl.fromJson;

  @override
  String? get title;
  @override
  String? get url;

  /// Create a copy of Contacts
  /// with the given fields replaced by the non-null parameter values.
  @override
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$ContactsImplCopyWith<_$ContactsImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

SpeedTestTargetList _$SpeedTestTargetListFromJson(Map<String, dynamic> json) {
  return _SpeedTestTargetList.fromJson(json);
}

/// @nodoc
mixin _$SpeedTestTargetList {
  String? get title => throw _privateConstructorUsedError;
  String? get url => throw _privateConstructorUsedError;

  /// Serializes this SpeedTestTargetList to a JSON map.
  Map<String, dynamic> toJson() => throw _privateConstructorUsedError;

  /// Create a copy of SpeedTestTargetList
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  $SpeedTestTargetListCopyWith<SpeedTestTargetList> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $SpeedTestTargetListCopyWith<$Res> {
  factory $SpeedTestTargetListCopyWith(
    SpeedTestTargetList value,
    $Res Function(SpeedTestTargetList) then,
  ) = _$SpeedTestTargetListCopyWithImpl<$Res, SpeedTestTargetList>;
  @useResult
  $Res call({String? title, String? url});
}

/// @nodoc
class _$SpeedTestTargetListCopyWithImpl<$Res, $Val extends SpeedTestTargetList>
    implements $SpeedTestTargetListCopyWith<$Res> {
  _$SpeedTestTargetListCopyWithImpl(this._value, this._then);

  // ignore: unused_field
  final $Val _value;
  // ignore: unused_field
  final $Res Function($Val) _then;

  /// Create a copy of SpeedTestTargetList
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({Object? title = freezed, Object? url = freezed}) {
    return _then(
      _value.copyWith(
            title: freezed == title
                ? _value.title
                : title // ignore: cast_nullable_to_non_nullable
                      as String?,
            url: freezed == url
                ? _value.url
                : url // ignore: cast_nullable_to_non_nullable
                      as String?,
          )
          as $Val,
    );
  }
}

/// @nodoc
abstract class _$$SpeedTestTargetListImplCopyWith<$Res>
    implements $SpeedTestTargetListCopyWith<$Res> {
  factory _$$SpeedTestTargetListImplCopyWith(
    _$SpeedTestTargetListImpl value,
    $Res Function(_$SpeedTestTargetListImpl) then,
  ) = __$$SpeedTestTargetListImplCopyWithImpl<$Res>;
  @override
  @useResult
  $Res call({String? title, String? url});
}

/// @nodoc
class __$$SpeedTestTargetListImplCopyWithImpl<$Res>
    extends _$SpeedTestTargetListCopyWithImpl<$Res, _$SpeedTestTargetListImpl>
    implements _$$SpeedTestTargetListImplCopyWith<$Res> {
  __$$SpeedTestTargetListImplCopyWithImpl(
    _$SpeedTestTargetListImpl _value,
    $Res Function(_$SpeedTestTargetListImpl) _then,
  ) : super(_value, _then);

  /// Create a copy of SpeedTestTargetList
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({Object? title = freezed, Object? url = freezed}) {
    return _then(
      _$SpeedTestTargetListImpl(
        title: freezed == title
            ? _value.title
            : title // ignore: cast_nullable_to_non_nullable
                  as String?,
        url: freezed == url
            ? _value.url
            : url // ignore: cast_nullable_to_non_nullable
                  as String?,
      ),
    );
  }
}

/// @nodoc
@JsonSerializable()
class _$SpeedTestTargetListImpl
    with DiagnosticableTreeMixin
    implements _SpeedTestTargetList {
  const _$SpeedTestTargetListImpl({this.title, this.url});

  factory _$SpeedTestTargetListImpl.fromJson(Map<String, dynamic> json) =>
      _$$SpeedTestTargetListImplFromJson(json);

  @override
  final String? title;
  @override
  final String? url;

  @override
  String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) {
    return 'SpeedTestTargetList(title: $title, url: $url)';
  }

  @override
  void debugFillProperties(DiagnosticPropertiesBuilder properties) {
    super.debugFillProperties(properties);
    properties
      ..add(DiagnosticsProperty('type', 'SpeedTestTargetList'))
      ..add(DiagnosticsProperty('title', title))
      ..add(DiagnosticsProperty('url', url));
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$SpeedTestTargetListImpl &&
            (identical(other.title, title) || other.title == title) &&
            (identical(other.url, url) || other.url == url));
  }

  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  int get hashCode => Object.hash(runtimeType, title, url);

  /// Create a copy of SpeedTestTargetList
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$SpeedTestTargetListImplCopyWith<_$SpeedTestTargetListImpl> get copyWith =>
      __$$SpeedTestTargetListImplCopyWithImpl<_$SpeedTestTargetListImpl>(
        this,
        _$identity,
      );

  @override
  Map<String, dynamic> toJson() {
    return _$$SpeedTestTargetListImplToJson(this);
  }
}

abstract class _SpeedTestTargetList implements SpeedTestTargetList {
  const factory _SpeedTestTargetList({final String? title, final String? url}) =
      _$SpeedTestTargetListImpl;

  factory _SpeedTestTargetList.fromJson(Map<String, dynamic> json) =
      _$SpeedTestTargetListImpl.fromJson;

  @override
  String? get title;
  @override
  String? get url;

  /// Create a copy of SpeedTestTargetList
  /// with the given fields replaced by the non-null parameter values.
  @override
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$SpeedTestTargetListImplCopyWith<_$SpeedTestTargetListImpl> get copyWith =>
      throw _privateConstructorUsedError;
}
