// GENERATED CODE - DO NOT MODIFY BY HAND
// coverage:ignore-file
// 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 'poultry_order.dart';

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

// dart format off
T _$identity<T>(T value) => value;

/// @nodoc
mixin _$PoultryOrder {

 String? get key; int? get id; Poultry? get poultry; int? get orderCode; String? get createDate; String? get sendDate; List<String>? get killHouseList; int? get firstQuantity; int? get quantity; bool? get directBuying; bool? get union; double? get amount; String? get financialOperation; int? get remainQuantity;@JsonKey(name: "Index_weight") double? get indexWeight; Hatching? get hatching; String? get finalState; int? get losses; String? get provinceState; String? get stateProcess; Registrar? get registrar; VetFarm? get vetFarm; bool? get freeSaleInProvince; bool? get freezing; bool? get export; String? get cityCheckRequest; bool? get market;
/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$PoultryOrderCopyWith<PoultryOrder> get copyWith => _$PoultryOrderCopyWithImpl<PoultryOrder>(this as PoultryOrder, _$identity);

  /// Serializes this PoultryOrder to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is PoultryOrder&&(identical(other.key, key) || other.key == key)&&(identical(other.id, id) || other.id == id)&&(identical(other.poultry, poultry) || other.poultry == poultry)&&(identical(other.orderCode, orderCode) || other.orderCode == orderCode)&&(identical(other.createDate, createDate) || other.createDate == createDate)&&(identical(other.sendDate, sendDate) || other.sendDate == sendDate)&&const DeepCollectionEquality().equals(other.killHouseList, killHouseList)&&(identical(other.firstQuantity, firstQuantity) || other.firstQuantity == firstQuantity)&&(identical(other.quantity, quantity) || other.quantity == quantity)&&(identical(other.directBuying, directBuying) || other.directBuying == directBuying)&&(identical(other.union, union) || other.union == union)&&(identical(other.amount, amount) || other.amount == amount)&&(identical(other.financialOperation, financialOperation) || other.financialOperation == financialOperation)&&(identical(other.remainQuantity, remainQuantity) || other.remainQuantity == remainQuantity)&&(identical(other.indexWeight, indexWeight) || other.indexWeight == indexWeight)&&(identical(other.hatching, hatching) || other.hatching == hatching)&&(identical(other.finalState, finalState) || other.finalState == finalState)&&(identical(other.losses, losses) || other.losses == losses)&&(identical(other.provinceState, provinceState) || other.provinceState == provinceState)&&(identical(other.stateProcess, stateProcess) || other.stateProcess == stateProcess)&&(identical(other.registrar, registrar) || other.registrar == registrar)&&(identical(other.vetFarm, vetFarm) || other.vetFarm == vetFarm)&&(identical(other.freeSaleInProvince, freeSaleInProvince) || other.freeSaleInProvince == freeSaleInProvince)&&(identical(other.freezing, freezing) || other.freezing == freezing)&&(identical(other.export, export) || other.export == export)&&(identical(other.cityCheckRequest, cityCheckRequest) || other.cityCheckRequest == cityCheckRequest)&&(identical(other.market, market) || other.market == market));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hashAll([runtimeType,key,id,poultry,orderCode,createDate,sendDate,const DeepCollectionEquality().hash(killHouseList),firstQuantity,quantity,directBuying,union,amount,financialOperation,remainQuantity,indexWeight,hatching,finalState,losses,provinceState,stateProcess,registrar,vetFarm,freeSaleInProvince,freezing,export,cityCheckRequest,market]);

@override
String toString() {
  return 'PoultryOrder(key: $key, id: $id, poultry: $poultry, orderCode: $orderCode, createDate: $createDate, sendDate: $sendDate, killHouseList: $killHouseList, firstQuantity: $firstQuantity, quantity: $quantity, directBuying: $directBuying, union: $union, amount: $amount, financialOperation: $financialOperation, remainQuantity: $remainQuantity, indexWeight: $indexWeight, hatching: $hatching, finalState: $finalState, losses: $losses, provinceState: $provinceState, stateProcess: $stateProcess, registrar: $registrar, vetFarm: $vetFarm, freeSaleInProvince: $freeSaleInProvince, freezing: $freezing, export: $export, cityCheckRequest: $cityCheckRequest, market: $market)';
}


}

/// @nodoc
abstract mixin class $PoultryOrderCopyWith<$Res>  {
  factory $PoultryOrderCopyWith(PoultryOrder value, $Res Function(PoultryOrder) _then) = _$PoultryOrderCopyWithImpl;
@useResult
$Res call({
 String? key, int? id, Poultry? poultry, int? orderCode, String? createDate, String? sendDate, List<String>? killHouseList, int? firstQuantity, int? quantity, bool? directBuying, bool? union, double? amount, String? financialOperation, int? remainQuantity,@JsonKey(name: "Index_weight") double? indexWeight, Hatching? hatching, String? finalState, int? losses, String? provinceState, String? stateProcess, Registrar? registrar, VetFarm? vetFarm, bool? freeSaleInProvince, bool? freezing, bool? export, String? cityCheckRequest, bool? market
});


$PoultryCopyWith<$Res>? get poultry;$HatchingCopyWith<$Res>? get hatching;$RegistrarCopyWith<$Res>? get registrar;$VetFarmCopyWith<$Res>? get vetFarm;

}
/// @nodoc
class _$PoultryOrderCopyWithImpl<$Res>
    implements $PoultryOrderCopyWith<$Res> {
  _$PoultryOrderCopyWithImpl(this._self, this._then);

  final PoultryOrder _self;
  final $Res Function(PoultryOrder) _then;

/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') @override $Res call({Object? key = freezed,Object? id = freezed,Object? poultry = freezed,Object? orderCode = freezed,Object? createDate = freezed,Object? sendDate = freezed,Object? killHouseList = freezed,Object? firstQuantity = freezed,Object? quantity = freezed,Object? directBuying = freezed,Object? union = freezed,Object? amount = freezed,Object? financialOperation = freezed,Object? remainQuantity = freezed,Object? indexWeight = freezed,Object? hatching = freezed,Object? finalState = freezed,Object? losses = freezed,Object? provinceState = freezed,Object? stateProcess = freezed,Object? registrar = freezed,Object? vetFarm = freezed,Object? freeSaleInProvince = freezed,Object? freezing = freezed,Object? export = freezed,Object? cityCheckRequest = freezed,Object? market = freezed,}) {
  return _then(_self.copyWith(
key: freezed == key ? _self.key : key // ignore: cast_nullable_to_non_nullable
as String?,id: freezed == id ? _self.id : id // ignore: cast_nullable_to_non_nullable
as int?,poultry: freezed == poultry ? _self.poultry : poultry // ignore: cast_nullable_to_non_nullable
as Poultry?,orderCode: freezed == orderCode ? _self.orderCode : orderCode // ignore: cast_nullable_to_non_nullable
as int?,createDate: freezed == createDate ? _self.createDate : createDate // ignore: cast_nullable_to_non_nullable
as String?,sendDate: freezed == sendDate ? _self.sendDate : sendDate // ignore: cast_nullable_to_non_nullable
as String?,killHouseList: freezed == killHouseList ? _self.killHouseList : killHouseList // ignore: cast_nullable_to_non_nullable
as List<String>?,firstQuantity: freezed == firstQuantity ? _self.firstQuantity : firstQuantity // ignore: cast_nullable_to_non_nullable
as int?,quantity: freezed == quantity ? _self.quantity : quantity // ignore: cast_nullable_to_non_nullable
as int?,directBuying: freezed == directBuying ? _self.directBuying : directBuying // ignore: cast_nullable_to_non_nullable
as bool?,union: freezed == union ? _self.union : union // ignore: cast_nullable_to_non_nullable
as bool?,amount: freezed == amount ? _self.amount : amount // ignore: cast_nullable_to_non_nullable
as double?,financialOperation: freezed == financialOperation ? _self.financialOperation : financialOperation // ignore: cast_nullable_to_non_nullable
as String?,remainQuantity: freezed == remainQuantity ? _self.remainQuantity : remainQuantity // ignore: cast_nullable_to_non_nullable
as int?,indexWeight: freezed == indexWeight ? _self.indexWeight : indexWeight // ignore: cast_nullable_to_non_nullable
as double?,hatching: freezed == hatching ? _self.hatching : hatching // ignore: cast_nullable_to_non_nullable
as Hatching?,finalState: freezed == finalState ? _self.finalState : finalState // ignore: cast_nullable_to_non_nullable
as String?,losses: freezed == losses ? _self.losses : losses // ignore: cast_nullable_to_non_nullable
as int?,provinceState: freezed == provinceState ? _self.provinceState : provinceState // ignore: cast_nullable_to_non_nullable
as String?,stateProcess: freezed == stateProcess ? _self.stateProcess : stateProcess // ignore: cast_nullable_to_non_nullable
as String?,registrar: freezed == registrar ? _self.registrar : registrar // ignore: cast_nullable_to_non_nullable
as Registrar?,vetFarm: freezed == vetFarm ? _self.vetFarm : vetFarm // ignore: cast_nullable_to_non_nullable
as VetFarm?,freeSaleInProvince: freezed == freeSaleInProvince ? _self.freeSaleInProvince : freeSaleInProvince // ignore: cast_nullable_to_non_nullable
as bool?,freezing: freezed == freezing ? _self.freezing : freezing // ignore: cast_nullable_to_non_nullable
as bool?,export: freezed == export ? _self.export : export // ignore: cast_nullable_to_non_nullable
as bool?,cityCheckRequest: freezed == cityCheckRequest ? _self.cityCheckRequest : cityCheckRequest // ignore: cast_nullable_to_non_nullable
as String?,market: freezed == market ? _self.market : market // ignore: cast_nullable_to_non_nullable
as bool?,
  ));
}
/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$PoultryCopyWith<$Res>? get poultry {
    if (_self.poultry == null) {
    return null;
  }

  return $PoultryCopyWith<$Res>(_self.poultry!, (value) {
    return _then(_self.copyWith(poultry: value));
  });
}/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$HatchingCopyWith<$Res>? get hatching {
    if (_self.hatching == null) {
    return null;
  }

  return $HatchingCopyWith<$Res>(_self.hatching!, (value) {
    return _then(_self.copyWith(hatching: value));
  });
}/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$RegistrarCopyWith<$Res>? get registrar {
    if (_self.registrar == null) {
    return null;
  }

  return $RegistrarCopyWith<$Res>(_self.registrar!, (value) {
    return _then(_self.copyWith(registrar: value));
  });
}/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$VetFarmCopyWith<$Res>? get vetFarm {
    if (_self.vetFarm == null) {
    return null;
  }

  return $VetFarmCopyWith<$Res>(_self.vetFarm!, (value) {
    return _then(_self.copyWith(vetFarm: value));
  });
}
}


/// Adds pattern-matching-related methods to [PoultryOrder].
extension PoultryOrderPatterns on PoultryOrder {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _PoultryOrder value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _PoultryOrder() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _PoultryOrder value)  $default,){
final _that = this;
switch (_that) {
case _PoultryOrder():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _PoultryOrder value)?  $default,){
final _that = this;
switch (_that) {
case _PoultryOrder() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( String? key,  int? id,  Poultry? poultry,  int? orderCode,  String? createDate,  String? sendDate,  List<String>? killHouseList,  int? firstQuantity,  int? quantity,  bool? directBuying,  bool? union,  double? amount,  String? financialOperation,  int? remainQuantity, @JsonKey(name: "Index_weight")  double? indexWeight,  Hatching? hatching,  String? finalState,  int? losses,  String? provinceState,  String? stateProcess,  Registrar? registrar,  VetFarm? vetFarm,  bool? freeSaleInProvince,  bool? freezing,  bool? export,  String? cityCheckRequest,  bool? market)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _PoultryOrder() when $default != null:
return $default(_that.key,_that.id,_that.poultry,_that.orderCode,_that.createDate,_that.sendDate,_that.killHouseList,_that.firstQuantity,_that.quantity,_that.directBuying,_that.union,_that.amount,_that.financialOperation,_that.remainQuantity,_that.indexWeight,_that.hatching,_that.finalState,_that.losses,_that.provinceState,_that.stateProcess,_that.registrar,_that.vetFarm,_that.freeSaleInProvince,_that.freezing,_that.export,_that.cityCheckRequest,_that.market);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( String? key,  int? id,  Poultry? poultry,  int? orderCode,  String? createDate,  String? sendDate,  List<String>? killHouseList,  int? firstQuantity,  int? quantity,  bool? directBuying,  bool? union,  double? amount,  String? financialOperation,  int? remainQuantity, @JsonKey(name: "Index_weight")  double? indexWeight,  Hatching? hatching,  String? finalState,  int? losses,  String? provinceState,  String? stateProcess,  Registrar? registrar,  VetFarm? vetFarm,  bool? freeSaleInProvince,  bool? freezing,  bool? export,  String? cityCheckRequest,  bool? market)  $default,) {final _that = this;
switch (_that) {
case _PoultryOrder():
return $default(_that.key,_that.id,_that.poultry,_that.orderCode,_that.createDate,_that.sendDate,_that.killHouseList,_that.firstQuantity,_that.quantity,_that.directBuying,_that.union,_that.amount,_that.financialOperation,_that.remainQuantity,_that.indexWeight,_that.hatching,_that.finalState,_that.losses,_that.provinceState,_that.stateProcess,_that.registrar,_that.vetFarm,_that.freeSaleInProvince,_that.freezing,_that.export,_that.cityCheckRequest,_that.market);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( String? key,  int? id,  Poultry? poultry,  int? orderCode,  String? createDate,  String? sendDate,  List<String>? killHouseList,  int? firstQuantity,  int? quantity,  bool? directBuying,  bool? union,  double? amount,  String? financialOperation,  int? remainQuantity, @JsonKey(name: "Index_weight")  double? indexWeight,  Hatching? hatching,  String? finalState,  int? losses,  String? provinceState,  String? stateProcess,  Registrar? registrar,  VetFarm? vetFarm,  bool? freeSaleInProvince,  bool? freezing,  bool? export,  String? cityCheckRequest,  bool? market)?  $default,) {final _that = this;
switch (_that) {
case _PoultryOrder() when $default != null:
return $default(_that.key,_that.id,_that.poultry,_that.orderCode,_that.createDate,_that.sendDate,_that.killHouseList,_that.firstQuantity,_that.quantity,_that.directBuying,_that.union,_that.amount,_that.financialOperation,_that.remainQuantity,_that.indexWeight,_that.hatching,_that.finalState,_that.losses,_that.provinceState,_that.stateProcess,_that.registrar,_that.vetFarm,_that.freeSaleInProvince,_that.freezing,_that.export,_that.cityCheckRequest,_that.market);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _PoultryOrder implements PoultryOrder {
  const _PoultryOrder({this.key, this.id, this.poultry, this.orderCode, this.createDate, this.sendDate, final  List<String>? killHouseList, this.firstQuantity, this.quantity, this.directBuying, this.union, this.amount, this.financialOperation, this.remainQuantity, @JsonKey(name: "Index_weight") this.indexWeight, this.hatching, this.finalState, this.losses, this.provinceState, this.stateProcess, this.registrar, this.vetFarm, this.freeSaleInProvince, this.freezing, this.export, this.cityCheckRequest, this.market}): _killHouseList = killHouseList;
  factory _PoultryOrder.fromJson(Map<String, dynamic> json) => _$PoultryOrderFromJson(json);

@override final  String? key;
@override final  int? id;
@override final  Poultry? poultry;
@override final  int? orderCode;
@override final  String? createDate;
@override final  String? sendDate;
 final  List<String>? _killHouseList;
@override List<String>? get killHouseList {
  final value = _killHouseList;
  if (value == null) return null;
  if (_killHouseList is EqualUnmodifiableListView) return _killHouseList;
  // ignore: implicit_dynamic_type
  return EqualUnmodifiableListView(value);
}

@override final  int? firstQuantity;
@override final  int? quantity;
@override final  bool? directBuying;
@override final  bool? union;
@override final  double? amount;
@override final  String? financialOperation;
@override final  int? remainQuantity;
@override@JsonKey(name: "Index_weight") final  double? indexWeight;
@override final  Hatching? hatching;
@override final  String? finalState;
@override final  int? losses;
@override final  String? provinceState;
@override final  String? stateProcess;
@override final  Registrar? registrar;
@override final  VetFarm? vetFarm;
@override final  bool? freeSaleInProvince;
@override final  bool? freezing;
@override final  bool? export;
@override final  String? cityCheckRequest;
@override final  bool? market;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _PoultryOrder&&(identical(other.key, key) || other.key == key)&&(identical(other.id, id) || other.id == id)&&(identical(other.poultry, poultry) || other.poultry == poultry)&&(identical(other.orderCode, orderCode) || other.orderCode == orderCode)&&(identical(other.createDate, createDate) || other.createDate == createDate)&&(identical(other.sendDate, sendDate) || other.sendDate == sendDate)&&const DeepCollectionEquality().equals(other._killHouseList, _killHouseList)&&(identical(other.firstQuantity, firstQuantity) || other.firstQuantity == firstQuantity)&&(identical(other.quantity, quantity) || other.quantity == quantity)&&(identical(other.directBuying, directBuying) || other.directBuying == directBuying)&&(identical(other.union, union) || other.union == union)&&(identical(other.amount, amount) || other.amount == amount)&&(identical(other.financialOperation, financialOperation) || other.financialOperation == financialOperation)&&(identical(other.remainQuantity, remainQuantity) || other.remainQuantity == remainQuantity)&&(identical(other.indexWeight, indexWeight) || other.indexWeight == indexWeight)&&(identical(other.hatching, hatching) || other.hatching == hatching)&&(identical(other.finalState, finalState) || other.finalState == finalState)&&(identical(other.losses, losses) || other.losses == losses)&&(identical(other.provinceState, provinceState) || other.provinceState == provinceState)&&(identical(other.stateProcess, stateProcess) || other.stateProcess == stateProcess)&&(identical(other.registrar, registrar) || other.registrar == registrar)&&(identical(other.vetFarm, vetFarm) || other.vetFarm == vetFarm)&&(identical(other.freeSaleInProvince, freeSaleInProvince) || other.freeSaleInProvince == freeSaleInProvince)&&(identical(other.freezing, freezing) || other.freezing == freezing)&&(identical(other.export, export) || other.export == export)&&(identical(other.cityCheckRequest, cityCheckRequest) || other.cityCheckRequest == cityCheckRequest)&&(identical(other.market, market) || other.market == market));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hashAll([runtimeType,key,id,poultry,orderCode,createDate,sendDate,const DeepCollectionEquality().hash(_killHouseList),firstQuantity,quantity,directBuying,union,amount,financialOperation,remainQuantity,indexWeight,hatching,finalState,losses,provinceState,stateProcess,registrar,vetFarm,freeSaleInProvince,freezing,export,cityCheckRequest,market]);

@override
String toString() {
  return 'PoultryOrder(key: $key, id: $id, poultry: $poultry, orderCode: $orderCode, createDate: $createDate, sendDate: $sendDate, killHouseList: $killHouseList, firstQuantity: $firstQuantity, quantity: $quantity, directBuying: $directBuying, union: $union, amount: $amount, financialOperation: $financialOperation, remainQuantity: $remainQuantity, indexWeight: $indexWeight, hatching: $hatching, finalState: $finalState, losses: $losses, provinceState: $provinceState, stateProcess: $stateProcess, registrar: $registrar, vetFarm: $vetFarm, freeSaleInProvince: $freeSaleInProvince, freezing: $freezing, export: $export, cityCheckRequest: $cityCheckRequest, market: $market)';
}


}

/// @nodoc
abstract mixin class _$PoultryOrderCopyWith<$Res> implements $PoultryOrderCopyWith<$Res> {
  factory _$PoultryOrderCopyWith(_PoultryOrder value, $Res Function(_PoultryOrder) _then) = __$PoultryOrderCopyWithImpl;
@override @useResult
$Res call({
 String? key, int? id, Poultry? poultry, int? orderCode, String? createDate, String? sendDate, List<String>? killHouseList, int? firstQuantity, int? quantity, bool? directBuying, bool? union, double? amount, String? financialOperation, int? remainQuantity,@JsonKey(name: "Index_weight") double? indexWeight, Hatching? hatching, String? finalState, int? losses, String? provinceState, String? stateProcess, Registrar? registrar, VetFarm? vetFarm, bool? freeSaleInProvince, bool? freezing, bool? export, String? cityCheckRequest, bool? market
});


@override $PoultryCopyWith<$Res>? get poultry;@override $HatchingCopyWith<$Res>? get hatching;@override $RegistrarCopyWith<$Res>? get registrar;@override $VetFarmCopyWith<$Res>? get vetFarm;

}
/// @nodoc
class __$PoultryOrderCopyWithImpl<$Res>
    implements _$PoultryOrderCopyWith<$Res> {
  __$PoultryOrderCopyWithImpl(this._self, this._then);

  final _PoultryOrder _self;
  final $Res Function(_PoultryOrder) _then;

/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override @pragma('vm:prefer-inline') $Res call({Object? key = freezed,Object? id = freezed,Object? poultry = freezed,Object? orderCode = freezed,Object? createDate = freezed,Object? sendDate = freezed,Object? killHouseList = freezed,Object? firstQuantity = freezed,Object? quantity = freezed,Object? directBuying = freezed,Object? union = freezed,Object? amount = freezed,Object? financialOperation = freezed,Object? remainQuantity = freezed,Object? indexWeight = freezed,Object? hatching = freezed,Object? finalState = freezed,Object? losses = freezed,Object? provinceState = freezed,Object? stateProcess = freezed,Object? registrar = freezed,Object? vetFarm = freezed,Object? freeSaleInProvince = freezed,Object? freezing = freezed,Object? export = freezed,Object? cityCheckRequest = freezed,Object? market = freezed,}) {
  return _then(_PoultryOrder(
key: freezed == key ? _self.key : key // ignore: cast_nullable_to_non_nullable
as String?,id: freezed == id ? _self.id : id // ignore: cast_nullable_to_non_nullable
as int?,poultry: freezed == poultry ? _self.poultry : poultry // ignore: cast_nullable_to_non_nullable
as Poultry?,orderCode: freezed == orderCode ? _self.orderCode : orderCode // ignore: cast_nullable_to_non_nullable
as int?,createDate: freezed == createDate ? _self.createDate : createDate // ignore: cast_nullable_to_non_nullable
as String?,sendDate: freezed == sendDate ? _self.sendDate : sendDate // ignore: cast_nullable_to_non_nullable
as String?,killHouseList: freezed == killHouseList ? _self._killHouseList : killHouseList // ignore: cast_nullable_to_non_nullable
as List<String>?,firstQuantity: freezed == firstQuantity ? _self.firstQuantity : firstQuantity // ignore: cast_nullable_to_non_nullable
as int?,quantity: freezed == quantity ? _self.quantity : quantity // ignore: cast_nullable_to_non_nullable
as int?,directBuying: freezed == directBuying ? _self.directBuying : directBuying // ignore: cast_nullable_to_non_nullable
as bool?,union: freezed == union ? _self.union : union // ignore: cast_nullable_to_non_nullable
as bool?,amount: freezed == amount ? _self.amount : amount // ignore: cast_nullable_to_non_nullable
as double?,financialOperation: freezed == financialOperation ? _self.financialOperation : financialOperation // ignore: cast_nullable_to_non_nullable
as String?,remainQuantity: freezed == remainQuantity ? _self.remainQuantity : remainQuantity // ignore: cast_nullable_to_non_nullable
as int?,indexWeight: freezed == indexWeight ? _self.indexWeight : indexWeight // ignore: cast_nullable_to_non_nullable
as double?,hatching: freezed == hatching ? _self.hatching : hatching // ignore: cast_nullable_to_non_nullable
as Hatching?,finalState: freezed == finalState ? _self.finalState : finalState // ignore: cast_nullable_to_non_nullable
as String?,losses: freezed == losses ? _self.losses : losses // ignore: cast_nullable_to_non_nullable
as int?,provinceState: freezed == provinceState ? _self.provinceState : provinceState // ignore: cast_nullable_to_non_nullable
as String?,stateProcess: freezed == stateProcess ? _self.stateProcess : stateProcess // ignore: cast_nullable_to_non_nullable
as String?,registrar: freezed == registrar ? _self.registrar : registrar // ignore: cast_nullable_to_non_nullable
as Registrar?,vetFarm: freezed == vetFarm ? _self.vetFarm : vetFarm // ignore: cast_nullable_to_non_nullable
as VetFarm?,freeSaleInProvince: freezed == freeSaleInProvince ? _self.freeSaleInProvince : freeSaleInProvince // ignore: cast_nullable_to_non_nullable
as bool?,freezing: freezed == freezing ? _self.freezing : freezing // ignore: cast_nullable_to_non_nullable
as bool?,export: freezed == export ? _self.export : export // ignore: cast_nullable_to_non_nullable
as bool?,cityCheckRequest: freezed == cityCheckRequest ? _self.cityCheckRequest : cityCheckRequest // ignore: cast_nullable_to_non_nullable
as String?,market: freezed == market ? _self.market : market // ignore: cast_nullable_to_non_nullable
as bool?,
  ));
}

/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$PoultryCopyWith<$Res>? get poultry {
    if (_self.poultry == null) {
    return null;
  }

  return $PoultryCopyWith<$Res>(_self.poultry!, (value) {
    return _then(_self.copyWith(poultry: value));
  });
}/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$HatchingCopyWith<$Res>? get hatching {
    if (_self.hatching == null) {
    return null;
  }

  return $HatchingCopyWith<$Res>(_self.hatching!, (value) {
    return _then(_self.copyWith(hatching: value));
  });
}/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$RegistrarCopyWith<$Res>? get registrar {
    if (_self.registrar == null) {
    return null;
  }

  return $RegistrarCopyWith<$Res>(_self.registrar!, (value) {
    return _then(_self.copyWith(registrar: value));
  });
}/// Create a copy of PoultryOrder
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$VetFarmCopyWith<$Res>? get vetFarm {
    if (_self.vetFarm == null) {
    return null;
  }

  return $VetFarmCopyWith<$Res>(_self.vetFarm!, (value) {
    return _then(_self.copyWith(vetFarm: value));
  });
}
}


/// @nodoc
mixin _$Poultry {

 String? get unitName; String? get cityOperator; User? get user; int? get totalCapacity; Address? get address; String? get breedingUniqueId; String? get systemCode;
/// Create a copy of Poultry
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$PoultryCopyWith<Poultry> get copyWith => _$PoultryCopyWithImpl<Poultry>(this as Poultry, _$identity);

  /// Serializes this Poultry to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is Poultry&&(identical(other.unitName, unitName) || other.unitName == unitName)&&(identical(other.cityOperator, cityOperator) || other.cityOperator == cityOperator)&&(identical(other.user, user) || other.user == user)&&(identical(other.totalCapacity, totalCapacity) || other.totalCapacity == totalCapacity)&&(identical(other.address, address) || other.address == address)&&(identical(other.breedingUniqueId, breedingUniqueId) || other.breedingUniqueId == breedingUniqueId)&&(identical(other.systemCode, systemCode) || other.systemCode == systemCode));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,unitName,cityOperator,user,totalCapacity,address,breedingUniqueId,systemCode);

@override
String toString() {
  return 'Poultry(unitName: $unitName, cityOperator: $cityOperator, user: $user, totalCapacity: $totalCapacity, address: $address, breedingUniqueId: $breedingUniqueId, systemCode: $systemCode)';
}


}

/// @nodoc
abstract mixin class $PoultryCopyWith<$Res>  {
  factory $PoultryCopyWith(Poultry value, $Res Function(Poultry) _then) = _$PoultryCopyWithImpl;
@useResult
$Res call({
 String? unitName, String? cityOperator, User? user, int? totalCapacity, Address? address, String? breedingUniqueId, String? systemCode
});


$UserCopyWith<$Res>? get user;$AddressCopyWith<$Res>? get address;

}
/// @nodoc
class _$PoultryCopyWithImpl<$Res>
    implements $PoultryCopyWith<$Res> {
  _$PoultryCopyWithImpl(this._self, this._then);

  final Poultry _self;
  final $Res Function(Poultry) _then;

/// Create a copy of Poultry
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') @override $Res call({Object? unitName = freezed,Object? cityOperator = freezed,Object? user = freezed,Object? totalCapacity = freezed,Object? address = freezed,Object? breedingUniqueId = freezed,Object? systemCode = freezed,}) {
  return _then(_self.copyWith(
unitName: freezed == unitName ? _self.unitName : unitName // ignore: cast_nullable_to_non_nullable
as String?,cityOperator: freezed == cityOperator ? _self.cityOperator : cityOperator // ignore: cast_nullable_to_non_nullable
as String?,user: freezed == user ? _self.user : user // ignore: cast_nullable_to_non_nullable
as User?,totalCapacity: freezed == totalCapacity ? _self.totalCapacity : totalCapacity // ignore: cast_nullable_to_non_nullable
as int?,address: freezed == address ? _self.address : address // ignore: cast_nullable_to_non_nullable
as Address?,breedingUniqueId: freezed == breedingUniqueId ? _self.breedingUniqueId : breedingUniqueId // ignore: cast_nullable_to_non_nullable
as String?,systemCode: freezed == systemCode ? _self.systemCode : systemCode // ignore: cast_nullable_to_non_nullable
as String?,
  ));
}
/// Create a copy of Poultry
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$UserCopyWith<$Res>? get user {
    if (_self.user == null) {
    return null;
  }

  return $UserCopyWith<$Res>(_self.user!, (value) {
    return _then(_self.copyWith(user: value));
  });
}/// Create a copy of Poultry
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$AddressCopyWith<$Res>? get address {
    if (_self.address == null) {
    return null;
  }

  return $AddressCopyWith<$Res>(_self.address!, (value) {
    return _then(_self.copyWith(address: value));
  });
}
}


/// Adds pattern-matching-related methods to [Poultry].
extension PoultryPatterns on Poultry {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _Poultry value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _Poultry() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _Poultry value)  $default,){
final _that = this;
switch (_that) {
case _Poultry():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _Poultry value)?  $default,){
final _that = this;
switch (_that) {
case _Poultry() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( String? unitName,  String? cityOperator,  User? user,  int? totalCapacity,  Address? address,  String? breedingUniqueId,  String? systemCode)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _Poultry() when $default != null:
return $default(_that.unitName,_that.cityOperator,_that.user,_that.totalCapacity,_that.address,_that.breedingUniqueId,_that.systemCode);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( String? unitName,  String? cityOperator,  User? user,  int? totalCapacity,  Address? address,  String? breedingUniqueId,  String? systemCode)  $default,) {final _that = this;
switch (_that) {
case _Poultry():
return $default(_that.unitName,_that.cityOperator,_that.user,_that.totalCapacity,_that.address,_that.breedingUniqueId,_that.systemCode);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( String? unitName,  String? cityOperator,  User? user,  int? totalCapacity,  Address? address,  String? breedingUniqueId,  String? systemCode)?  $default,) {final _that = this;
switch (_that) {
case _Poultry() when $default != null:
return $default(_that.unitName,_that.cityOperator,_that.user,_that.totalCapacity,_that.address,_that.breedingUniqueId,_that.systemCode);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _Poultry implements Poultry {
  const _Poultry({this.unitName, this.cityOperator, this.user, this.totalCapacity, this.address, this.breedingUniqueId, this.systemCode});
  factory _Poultry.fromJson(Map<String, dynamic> json) => _$PoultryFromJson(json);

@override final  String? unitName;
@override final  String? cityOperator;
@override final  User? user;
@override final  int? totalCapacity;
@override final  Address? address;
@override final  String? breedingUniqueId;
@override final  String? systemCode;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _Poultry&&(identical(other.unitName, unitName) || other.unitName == unitName)&&(identical(other.cityOperator, cityOperator) || other.cityOperator == cityOperator)&&(identical(other.user, user) || other.user == user)&&(identical(other.totalCapacity, totalCapacity) || other.totalCapacity == totalCapacity)&&(identical(other.address, address) || other.address == address)&&(identical(other.breedingUniqueId, breedingUniqueId) || other.breedingUniqueId == breedingUniqueId)&&(identical(other.systemCode, systemCode) || other.systemCode == systemCode));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,unitName,cityOperator,user,totalCapacity,address,breedingUniqueId,systemCode);

@override
String toString() {
  return 'Poultry(unitName: $unitName, cityOperator: $cityOperator, user: $user, totalCapacity: $totalCapacity, address: $address, breedingUniqueId: $breedingUniqueId, systemCode: $systemCode)';
}


}

/// @nodoc
abstract mixin class _$PoultryCopyWith<$Res> implements $PoultryCopyWith<$Res> {
  factory _$PoultryCopyWith(_Poultry value, $Res Function(_Poultry) _then) = __$PoultryCopyWithImpl;
@override @useResult
$Res call({
 String? unitName, String? cityOperator, User? user, int? totalCapacity, Address? address, String? breedingUniqueId, String? systemCode
});


@override $UserCopyWith<$Res>? get user;@override $AddressCopyWith<$Res>? get address;

}
/// @nodoc
class __$PoultryCopyWithImpl<$Res>
    implements _$PoultryCopyWith<$Res> {
  __$PoultryCopyWithImpl(this._self, this._then);

  final _Poultry _self;
  final $Res Function(_Poultry) _then;

/// Create a copy of Poultry
/// with the given fields replaced by the non-null parameter values.
@override @pragma('vm:prefer-inline') $Res call({Object? unitName = freezed,Object? cityOperator = freezed,Object? user = freezed,Object? totalCapacity = freezed,Object? address = freezed,Object? breedingUniqueId = freezed,Object? systemCode = freezed,}) {
  return _then(_Poultry(
unitName: freezed == unitName ? _self.unitName : unitName // ignore: cast_nullable_to_non_nullable
as String?,cityOperator: freezed == cityOperator ? _self.cityOperator : cityOperator // ignore: cast_nullable_to_non_nullable
as String?,user: freezed == user ? _self.user : user // ignore: cast_nullable_to_non_nullable
as User?,totalCapacity: freezed == totalCapacity ? _self.totalCapacity : totalCapacity // ignore: cast_nullable_to_non_nullable
as int?,address: freezed == address ? _self.address : address // ignore: cast_nullable_to_non_nullable
as Address?,breedingUniqueId: freezed == breedingUniqueId ? _self.breedingUniqueId : breedingUniqueId // ignore: cast_nullable_to_non_nullable
as String?,systemCode: freezed == systemCode ? _self.systemCode : systemCode // ignore: cast_nullable_to_non_nullable
as String?,
  ));
}

/// Create a copy of Poultry
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$UserCopyWith<$Res>? get user {
    if (_self.user == null) {
    return null;
  }

  return $UserCopyWith<$Res>(_self.user!, (value) {
    return _then(_self.copyWith(user: value));
  });
}/// Create a copy of Poultry
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$AddressCopyWith<$Res>? get address {
    if (_self.address == null) {
    return null;
  }

  return $AddressCopyWith<$Res>(_self.address!, (value) {
    return _then(_self.copyWith(address: value));
  });
}
}


/// @nodoc
mixin _$User {

 String? get fullName; String? get firstName; String? get lastName; int? get baseOrder; String? get mobile; String? get nationalId; String? get nationalCode; String? get key; City? get city; String? get unitName; String? get unitNationalId; String? get unitRegistrationNumber; String? get unitEconomicalNumber; String? get unitProvince; String? get unitCity; String? get unitPostalCode; String? get unitAddress;
/// Create a copy of User
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$UserCopyWith<User> get copyWith => _$UserCopyWithImpl<User>(this as User, _$identity);

  /// Serializes this User to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is User&&(identical(other.fullName, fullName) || other.fullName == fullName)&&(identical(other.firstName, firstName) || other.firstName == firstName)&&(identical(other.lastName, lastName) || other.lastName == lastName)&&(identical(other.baseOrder, baseOrder) || other.baseOrder == baseOrder)&&(identical(other.mobile, mobile) || other.mobile == mobile)&&(identical(other.nationalId, nationalId) || other.nationalId == nationalId)&&(identical(other.nationalCode, nationalCode) || other.nationalCode == nationalCode)&&(identical(other.key, key) || other.key == key)&&(identical(other.city, city) || other.city == city)&&(identical(other.unitName, unitName) || other.unitName == unitName)&&(identical(other.unitNationalId, unitNationalId) || other.unitNationalId == unitNationalId)&&(identical(other.unitRegistrationNumber, unitRegistrationNumber) || other.unitRegistrationNumber == unitRegistrationNumber)&&(identical(other.unitEconomicalNumber, unitEconomicalNumber) || other.unitEconomicalNumber == unitEconomicalNumber)&&(identical(other.unitProvince, unitProvince) || other.unitProvince == unitProvince)&&(identical(other.unitCity, unitCity) || other.unitCity == unitCity)&&(identical(other.unitPostalCode, unitPostalCode) || other.unitPostalCode == unitPostalCode)&&(identical(other.unitAddress, unitAddress) || other.unitAddress == unitAddress));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,fullName,firstName,lastName,baseOrder,mobile,nationalId,nationalCode,key,city,unitName,unitNationalId,unitRegistrationNumber,unitEconomicalNumber,unitProvince,unitCity,unitPostalCode,unitAddress);

@override
String toString() {
  return 'User(fullName: $fullName, firstName: $firstName, lastName: $lastName, baseOrder: $baseOrder, mobile: $mobile, nationalId: $nationalId, nationalCode: $nationalCode, key: $key, city: $city, unitName: $unitName, unitNationalId: $unitNationalId, unitRegistrationNumber: $unitRegistrationNumber, unitEconomicalNumber: $unitEconomicalNumber, unitProvince: $unitProvince, unitCity: $unitCity, unitPostalCode: $unitPostalCode, unitAddress: $unitAddress)';
}


}

/// @nodoc
abstract mixin class $UserCopyWith<$Res>  {
  factory $UserCopyWith(User value, $Res Function(User) _then) = _$UserCopyWithImpl;
@useResult
$Res call({
 String? fullName, String? firstName, String? lastName, int? baseOrder, String? mobile, String? nationalId, String? nationalCode, String? key, City? city, String? unitName, String? unitNationalId, String? unitRegistrationNumber, String? unitEconomicalNumber, String? unitProvince, String? unitCity, String? unitPostalCode, String? unitAddress
});


$CityCopyWith<$Res>? get city;

}
/// @nodoc
class _$UserCopyWithImpl<$Res>
    implements $UserCopyWith<$Res> {
  _$UserCopyWithImpl(this._self, this._then);

  final User _self;
  final $Res Function(User) _then;

/// Create a copy of User
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') @override $Res call({Object? fullName = freezed,Object? firstName = freezed,Object? lastName = freezed,Object? baseOrder = freezed,Object? mobile = freezed,Object? nationalId = freezed,Object? nationalCode = freezed,Object? key = freezed,Object? city = freezed,Object? unitName = freezed,Object? unitNationalId = freezed,Object? unitRegistrationNumber = freezed,Object? unitEconomicalNumber = freezed,Object? unitProvince = freezed,Object? unitCity = freezed,Object? unitPostalCode = freezed,Object? unitAddress = freezed,}) {
  return _then(_self.copyWith(
fullName: freezed == fullName ? _self.fullName : fullName // ignore: cast_nullable_to_non_nullable
as String?,firstName: freezed == firstName ? _self.firstName : firstName // ignore: cast_nullable_to_non_nullable
as String?,lastName: freezed == lastName ? _self.lastName : lastName // ignore: cast_nullable_to_non_nullable
as String?,baseOrder: freezed == baseOrder ? _self.baseOrder : baseOrder // ignore: cast_nullable_to_non_nullable
as int?,mobile: freezed == mobile ? _self.mobile : mobile // ignore: cast_nullable_to_non_nullable
as String?,nationalId: freezed == nationalId ? _self.nationalId : nationalId // ignore: cast_nullable_to_non_nullable
as String?,nationalCode: freezed == nationalCode ? _self.nationalCode : nationalCode // ignore: cast_nullable_to_non_nullable
as String?,key: freezed == key ? _self.key : key // ignore: cast_nullable_to_non_nullable
as String?,city: freezed == city ? _self.city : city // ignore: cast_nullable_to_non_nullable
as City?,unitName: freezed == unitName ? _self.unitName : unitName // ignore: cast_nullable_to_non_nullable
as String?,unitNationalId: freezed == unitNationalId ? _self.unitNationalId : unitNationalId // ignore: cast_nullable_to_non_nullable
as String?,unitRegistrationNumber: freezed == unitRegistrationNumber ? _self.unitRegistrationNumber : unitRegistrationNumber // ignore: cast_nullable_to_non_nullable
as String?,unitEconomicalNumber: freezed == unitEconomicalNumber ? _self.unitEconomicalNumber : unitEconomicalNumber // ignore: cast_nullable_to_non_nullable
as String?,unitProvince: freezed == unitProvince ? _self.unitProvince : unitProvince // ignore: cast_nullable_to_non_nullable
as String?,unitCity: freezed == unitCity ? _self.unitCity : unitCity // ignore: cast_nullable_to_non_nullable
as String?,unitPostalCode: freezed == unitPostalCode ? _self.unitPostalCode : unitPostalCode // ignore: cast_nullable_to_non_nullable
as String?,unitAddress: freezed == unitAddress ? _self.unitAddress : unitAddress // ignore: cast_nullable_to_non_nullable
as String?,
  ));
}
/// Create a copy of User
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$CityCopyWith<$Res>? get city {
    if (_self.city == null) {
    return null;
  }

  return $CityCopyWith<$Res>(_self.city!, (value) {
    return _then(_self.copyWith(city: value));
  });
}
}


/// Adds pattern-matching-related methods to [User].
extension UserPatterns on User {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _User value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _User() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _User value)  $default,){
final _that = this;
switch (_that) {
case _User():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _User value)?  $default,){
final _that = this;
switch (_that) {
case _User() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( String? fullName,  String? firstName,  String? lastName,  int? baseOrder,  String? mobile,  String? nationalId,  String? nationalCode,  String? key,  City? city,  String? unitName,  String? unitNationalId,  String? unitRegistrationNumber,  String? unitEconomicalNumber,  String? unitProvince,  String? unitCity,  String? unitPostalCode,  String? unitAddress)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _User() when $default != null:
return $default(_that.fullName,_that.firstName,_that.lastName,_that.baseOrder,_that.mobile,_that.nationalId,_that.nationalCode,_that.key,_that.city,_that.unitName,_that.unitNationalId,_that.unitRegistrationNumber,_that.unitEconomicalNumber,_that.unitProvince,_that.unitCity,_that.unitPostalCode,_that.unitAddress);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( String? fullName,  String? firstName,  String? lastName,  int? baseOrder,  String? mobile,  String? nationalId,  String? nationalCode,  String? key,  City? city,  String? unitName,  String? unitNationalId,  String? unitRegistrationNumber,  String? unitEconomicalNumber,  String? unitProvince,  String? unitCity,  String? unitPostalCode,  String? unitAddress)  $default,) {final _that = this;
switch (_that) {
case _User():
return $default(_that.fullName,_that.firstName,_that.lastName,_that.baseOrder,_that.mobile,_that.nationalId,_that.nationalCode,_that.key,_that.city,_that.unitName,_that.unitNationalId,_that.unitRegistrationNumber,_that.unitEconomicalNumber,_that.unitProvince,_that.unitCity,_that.unitPostalCode,_that.unitAddress);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( String? fullName,  String? firstName,  String? lastName,  int? baseOrder,  String? mobile,  String? nationalId,  String? nationalCode,  String? key,  City? city,  String? unitName,  String? unitNationalId,  String? unitRegistrationNumber,  String? unitEconomicalNumber,  String? unitProvince,  String? unitCity,  String? unitPostalCode,  String? unitAddress)?  $default,) {final _that = this;
switch (_that) {
case _User() when $default != null:
return $default(_that.fullName,_that.firstName,_that.lastName,_that.baseOrder,_that.mobile,_that.nationalId,_that.nationalCode,_that.key,_that.city,_that.unitName,_that.unitNationalId,_that.unitRegistrationNumber,_that.unitEconomicalNumber,_that.unitProvince,_that.unitCity,_that.unitPostalCode,_that.unitAddress);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _User implements User {
  const _User({this.fullName, this.firstName, this.lastName, this.baseOrder, this.mobile, this.nationalId, this.nationalCode, this.key, this.city, this.unitName, this.unitNationalId, this.unitRegistrationNumber, this.unitEconomicalNumber, this.unitProvince, this.unitCity, this.unitPostalCode, this.unitAddress});
  factory _User.fromJson(Map<String, dynamic> json) => _$UserFromJson(json);

@override final  String? fullName;
@override final  String? firstName;
@override final  String? lastName;
@override final  int? baseOrder;
@override final  String? mobile;
@override final  String? nationalId;
@override final  String? nationalCode;
@override final  String? key;
@override final  City? city;
@override final  String? unitName;
@override final  String? unitNationalId;
@override final  String? unitRegistrationNumber;
@override final  String? unitEconomicalNumber;
@override final  String? unitProvince;
@override final  String? unitCity;
@override final  String? unitPostalCode;
@override final  String? unitAddress;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _User&&(identical(other.fullName, fullName) || other.fullName == fullName)&&(identical(other.firstName, firstName) || other.firstName == firstName)&&(identical(other.lastName, lastName) || other.lastName == lastName)&&(identical(other.baseOrder, baseOrder) || other.baseOrder == baseOrder)&&(identical(other.mobile, mobile) || other.mobile == mobile)&&(identical(other.nationalId, nationalId) || other.nationalId == nationalId)&&(identical(other.nationalCode, nationalCode) || other.nationalCode == nationalCode)&&(identical(other.key, key) || other.key == key)&&(identical(other.city, city) || other.city == city)&&(identical(other.unitName, unitName) || other.unitName == unitName)&&(identical(other.unitNationalId, unitNationalId) || other.unitNationalId == unitNationalId)&&(identical(other.unitRegistrationNumber, unitRegistrationNumber) || other.unitRegistrationNumber == unitRegistrationNumber)&&(identical(other.unitEconomicalNumber, unitEconomicalNumber) || other.unitEconomicalNumber == unitEconomicalNumber)&&(identical(other.unitProvince, unitProvince) || other.unitProvince == unitProvince)&&(identical(other.unitCity, unitCity) || other.unitCity == unitCity)&&(identical(other.unitPostalCode, unitPostalCode) || other.unitPostalCode == unitPostalCode)&&(identical(other.unitAddress, unitAddress) || other.unitAddress == unitAddress));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,fullName,firstName,lastName,baseOrder,mobile,nationalId,nationalCode,key,city,unitName,unitNationalId,unitRegistrationNumber,unitEconomicalNumber,unitProvince,unitCity,unitPostalCode,unitAddress);

@override
String toString() {
  return 'User(fullName: $fullName, firstName: $firstName, lastName: $lastName, baseOrder: $baseOrder, mobile: $mobile, nationalId: $nationalId, nationalCode: $nationalCode, key: $key, city: $city, unitName: $unitName, unitNationalId: $unitNationalId, unitRegistrationNumber: $unitRegistrationNumber, unitEconomicalNumber: $unitEconomicalNumber, unitProvince: $unitProvince, unitCity: $unitCity, unitPostalCode: $unitPostalCode, unitAddress: $unitAddress)';
}


}

/// @nodoc
abstract mixin class _$UserCopyWith<$Res> implements $UserCopyWith<$Res> {
  factory _$UserCopyWith(_User value, $Res Function(_User) _then) = __$UserCopyWithImpl;
@override @useResult
$Res call({
 String? fullName, String? firstName, String? lastName, int? baseOrder, String? mobile, String? nationalId, String? nationalCode, String? key, City? city, String? unitName, String? unitNationalId, String? unitRegistrationNumber, String? unitEconomicalNumber, String? unitProvince, String? unitCity, String? unitPostalCode, String? unitAddress
});


@override $CityCopyWith<$Res>? get city;

}
/// @nodoc
class __$UserCopyWithImpl<$Res>
    implements _$UserCopyWith<$Res> {
  __$UserCopyWithImpl(this._self, this._then);

  final _User _self;
  final $Res Function(_User) _then;

/// Create a copy of User
/// with the given fields replaced by the non-null parameter values.
@override @pragma('vm:prefer-inline') $Res call({Object? fullName = freezed,Object? firstName = freezed,Object? lastName = freezed,Object? baseOrder = freezed,Object? mobile = freezed,Object? nationalId = freezed,Object? nationalCode = freezed,Object? key = freezed,Object? city = freezed,Object? unitName = freezed,Object? unitNationalId = freezed,Object? unitRegistrationNumber = freezed,Object? unitEconomicalNumber = freezed,Object? unitProvince = freezed,Object? unitCity = freezed,Object? unitPostalCode = freezed,Object? unitAddress = freezed,}) {
  return _then(_User(
fullName: freezed == fullName ? _self.fullName : fullName // ignore: cast_nullable_to_non_nullable
as String?,firstName: freezed == firstName ? _self.firstName : firstName // ignore: cast_nullable_to_non_nullable
as String?,lastName: freezed == lastName ? _self.lastName : lastName // ignore: cast_nullable_to_non_nullable
as String?,baseOrder: freezed == baseOrder ? _self.baseOrder : baseOrder // ignore: cast_nullable_to_non_nullable
as int?,mobile: freezed == mobile ? _self.mobile : mobile // ignore: cast_nullable_to_non_nullable
as String?,nationalId: freezed == nationalId ? _self.nationalId : nationalId // ignore: cast_nullable_to_non_nullable
as String?,nationalCode: freezed == nationalCode ? _self.nationalCode : nationalCode // ignore: cast_nullable_to_non_nullable
as String?,key: freezed == key ? _self.key : key // ignore: cast_nullable_to_non_nullable
as String?,city: freezed == city ? _self.city : city // ignore: cast_nullable_to_non_nullable
as City?,unitName: freezed == unitName ? _self.unitName : unitName // ignore: cast_nullable_to_non_nullable
as String?,unitNationalId: freezed == unitNationalId ? _self.unitNationalId : unitNationalId // ignore: cast_nullable_to_non_nullable
as String?,unitRegistrationNumber: freezed == unitRegistrationNumber ? _self.unitRegistrationNumber : unitRegistrationNumber // ignore: cast_nullable_to_non_nullable
as String?,unitEconomicalNumber: freezed == unitEconomicalNumber ? _self.unitEconomicalNumber : unitEconomicalNumber // ignore: cast_nullable_to_non_nullable
as String?,unitProvince: freezed == unitProvince ? _self.unitProvince : unitProvince // ignore: cast_nullable_to_non_nullable
as String?,unitCity: freezed == unitCity ? _self.unitCity : unitCity // ignore: cast_nullable_to_non_nullable
as String?,unitPostalCode: freezed == unitPostalCode ? _self.unitPostalCode : unitPostalCode // ignore: cast_nullable_to_non_nullable
as String?,unitAddress: freezed == unitAddress ? _self.unitAddress : unitAddress // ignore: cast_nullable_to_non_nullable
as String?,
  ));
}

/// Create a copy of User
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$CityCopyWith<$Res>? get city {
    if (_self.city == null) {
    return null;
  }

  return $CityCopyWith<$Res>(_self.city!, (value) {
    return _then(_self.copyWith(city: value));
  });
}
}


/// @nodoc
mixin _$City {

 int? get id; String? get key; String? get createDate; String? get modifyDate; bool? get trash; int? get provinceIdForeignKey; int? get cityIdKey; String? get name; double? get productPrice; bool? get provinceCenter; int? get cityNumber; String? get cityName; int? get provinceNumber; String? get provinceName; dynamic get createdBy; dynamic get modifiedBy; int? get province;
/// Create a copy of City
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$CityCopyWith<City> get copyWith => _$CityCopyWithImpl<City>(this as City, _$identity);

  /// Serializes this City to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is City&&(identical(other.id, id) || other.id == id)&&(identical(other.key, key) || other.key == key)&&(identical(other.createDate, createDate) || other.createDate == createDate)&&(identical(other.modifyDate, modifyDate) || other.modifyDate == modifyDate)&&(identical(other.trash, trash) || other.trash == trash)&&(identical(other.provinceIdForeignKey, provinceIdForeignKey) || other.provinceIdForeignKey == provinceIdForeignKey)&&(identical(other.cityIdKey, cityIdKey) || other.cityIdKey == cityIdKey)&&(identical(other.name, name) || other.name == name)&&(identical(other.productPrice, productPrice) || other.productPrice == productPrice)&&(identical(other.provinceCenter, provinceCenter) || other.provinceCenter == provinceCenter)&&(identical(other.cityNumber, cityNumber) || other.cityNumber == cityNumber)&&(identical(other.cityName, cityName) || other.cityName == cityName)&&(identical(other.provinceNumber, provinceNumber) || other.provinceNumber == provinceNumber)&&(identical(other.provinceName, provinceName) || other.provinceName == provinceName)&&const DeepCollectionEquality().equals(other.createdBy, createdBy)&&const DeepCollectionEquality().equals(other.modifiedBy, modifiedBy)&&(identical(other.province, province) || other.province == province));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,id,key,createDate,modifyDate,trash,provinceIdForeignKey,cityIdKey,name,productPrice,provinceCenter,cityNumber,cityName,provinceNumber,provinceName,const DeepCollectionEquality().hash(createdBy),const DeepCollectionEquality().hash(modifiedBy),province);

@override
String toString() {
  return 'City(id: $id, key: $key, createDate: $createDate, modifyDate: $modifyDate, trash: $trash, provinceIdForeignKey: $provinceIdForeignKey, cityIdKey: $cityIdKey, name: $name, productPrice: $productPrice, provinceCenter: $provinceCenter, cityNumber: $cityNumber, cityName: $cityName, provinceNumber: $provinceNumber, provinceName: $provinceName, createdBy: $createdBy, modifiedBy: $modifiedBy, province: $province)';
}


}

/// @nodoc
abstract mixin class $CityCopyWith<$Res>  {
  factory $CityCopyWith(City value, $Res Function(City) _then) = _$CityCopyWithImpl;
@useResult
$Res call({
 int? id, String? key, String? createDate, String? modifyDate, bool? trash, int? provinceIdForeignKey, int? cityIdKey, String? name, double? productPrice, bool? provinceCenter, int? cityNumber, String? cityName, int? provinceNumber, String? provinceName, dynamic createdBy, dynamic modifiedBy, int? province
});




}
/// @nodoc
class _$CityCopyWithImpl<$Res>
    implements $CityCopyWith<$Res> {
  _$CityCopyWithImpl(this._self, this._then);

  final City _self;
  final $Res Function(City) _then;

/// Create a copy of City
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') @override $Res call({Object? id = freezed,Object? key = freezed,Object? createDate = freezed,Object? modifyDate = freezed,Object? trash = freezed,Object? provinceIdForeignKey = freezed,Object? cityIdKey = freezed,Object? name = freezed,Object? productPrice = freezed,Object? provinceCenter = freezed,Object? cityNumber = freezed,Object? cityName = freezed,Object? provinceNumber = freezed,Object? provinceName = freezed,Object? createdBy = freezed,Object? modifiedBy = freezed,Object? province = freezed,}) {
  return _then(_self.copyWith(
id: freezed == id ? _self.id : id // ignore: cast_nullable_to_non_nullable
as int?,key: freezed == key ? _self.key : key // ignore: cast_nullable_to_non_nullable
as String?,createDate: freezed == createDate ? _self.createDate : createDate // ignore: cast_nullable_to_non_nullable
as String?,modifyDate: freezed == modifyDate ? _self.modifyDate : modifyDate // ignore: cast_nullable_to_non_nullable
as String?,trash: freezed == trash ? _self.trash : trash // ignore: cast_nullable_to_non_nullable
as bool?,provinceIdForeignKey: freezed == provinceIdForeignKey ? _self.provinceIdForeignKey : provinceIdForeignKey // ignore: cast_nullable_to_non_nullable
as int?,cityIdKey: freezed == cityIdKey ? _self.cityIdKey : cityIdKey // ignore: cast_nullable_to_non_nullable
as int?,name: freezed == name ? _self.name : name // ignore: cast_nullable_to_non_nullable
as String?,productPrice: freezed == productPrice ? _self.productPrice : productPrice // ignore: cast_nullable_to_non_nullable
as double?,provinceCenter: freezed == provinceCenter ? _self.provinceCenter : provinceCenter // ignore: cast_nullable_to_non_nullable
as bool?,cityNumber: freezed == cityNumber ? _self.cityNumber : cityNumber // ignore: cast_nullable_to_non_nullable
as int?,cityName: freezed == cityName ? _self.cityName : cityName // ignore: cast_nullable_to_non_nullable
as String?,provinceNumber: freezed == provinceNumber ? _self.provinceNumber : provinceNumber // ignore: cast_nullable_to_non_nullable
as int?,provinceName: freezed == provinceName ? _self.provinceName : provinceName // ignore: cast_nullable_to_non_nullable
as String?,createdBy: freezed == createdBy ? _self.createdBy : createdBy // ignore: cast_nullable_to_non_nullable
as dynamic,modifiedBy: freezed == modifiedBy ? _self.modifiedBy : modifiedBy // ignore: cast_nullable_to_non_nullable
as dynamic,province: freezed == province ? _self.province : province // ignore: cast_nullable_to_non_nullable
as int?,
  ));
}

}


/// Adds pattern-matching-related methods to [City].
extension CityPatterns on City {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _City value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _City() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _City value)  $default,){
final _that = this;
switch (_that) {
case _City():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _City value)?  $default,){
final _that = this;
switch (_that) {
case _City() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( int? id,  String? key,  String? createDate,  String? modifyDate,  bool? trash,  int? provinceIdForeignKey,  int? cityIdKey,  String? name,  double? productPrice,  bool? provinceCenter,  int? cityNumber,  String? cityName,  int? provinceNumber,  String? provinceName,  dynamic createdBy,  dynamic modifiedBy,  int? province)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _City() when $default != null:
return $default(_that.id,_that.key,_that.createDate,_that.modifyDate,_that.trash,_that.provinceIdForeignKey,_that.cityIdKey,_that.name,_that.productPrice,_that.provinceCenter,_that.cityNumber,_that.cityName,_that.provinceNumber,_that.provinceName,_that.createdBy,_that.modifiedBy,_that.province);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( int? id,  String? key,  String? createDate,  String? modifyDate,  bool? trash,  int? provinceIdForeignKey,  int? cityIdKey,  String? name,  double? productPrice,  bool? provinceCenter,  int? cityNumber,  String? cityName,  int? provinceNumber,  String? provinceName,  dynamic createdBy,  dynamic modifiedBy,  int? province)  $default,) {final _that = this;
switch (_that) {
case _City():
return $default(_that.id,_that.key,_that.createDate,_that.modifyDate,_that.trash,_that.provinceIdForeignKey,_that.cityIdKey,_that.name,_that.productPrice,_that.provinceCenter,_that.cityNumber,_that.cityName,_that.provinceNumber,_that.provinceName,_that.createdBy,_that.modifiedBy,_that.province);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( int? id,  String? key,  String? createDate,  String? modifyDate,  bool? trash,  int? provinceIdForeignKey,  int? cityIdKey,  String? name,  double? productPrice,  bool? provinceCenter,  int? cityNumber,  String? cityName,  int? provinceNumber,  String? provinceName,  dynamic createdBy,  dynamic modifiedBy,  int? province)?  $default,) {final _that = this;
switch (_that) {
case _City() when $default != null:
return $default(_that.id,_that.key,_that.createDate,_that.modifyDate,_that.trash,_that.provinceIdForeignKey,_that.cityIdKey,_that.name,_that.productPrice,_that.provinceCenter,_that.cityNumber,_that.cityName,_that.provinceNumber,_that.provinceName,_that.createdBy,_that.modifiedBy,_that.province);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _City implements City {
  const _City({this.id, this.key, this.createDate, this.modifyDate, this.trash, this.provinceIdForeignKey, this.cityIdKey, this.name, this.productPrice, this.provinceCenter, this.cityNumber, this.cityName, this.provinceNumber, this.provinceName, this.createdBy, this.modifiedBy, this.province});
  factory _City.fromJson(Map<String, dynamic> json) => _$CityFromJson(json);

@override final  int? id;
@override final  String? key;
@override final  String? createDate;
@override final  String? modifyDate;
@override final  bool? trash;
@override final  int? provinceIdForeignKey;
@override final  int? cityIdKey;
@override final  String? name;
@override final  double? productPrice;
@override final  bool? provinceCenter;
@override final  int? cityNumber;
@override final  String? cityName;
@override final  int? provinceNumber;
@override final  String? provinceName;
@override final  dynamic createdBy;
@override final  dynamic modifiedBy;
@override final  int? province;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _City&&(identical(other.id, id) || other.id == id)&&(identical(other.key, key) || other.key == key)&&(identical(other.createDate, createDate) || other.createDate == createDate)&&(identical(other.modifyDate, modifyDate) || other.modifyDate == modifyDate)&&(identical(other.trash, trash) || other.trash == trash)&&(identical(other.provinceIdForeignKey, provinceIdForeignKey) || other.provinceIdForeignKey == provinceIdForeignKey)&&(identical(other.cityIdKey, cityIdKey) || other.cityIdKey == cityIdKey)&&(identical(other.name, name) || other.name == name)&&(identical(other.productPrice, productPrice) || other.productPrice == productPrice)&&(identical(other.provinceCenter, provinceCenter) || other.provinceCenter == provinceCenter)&&(identical(other.cityNumber, cityNumber) || other.cityNumber == cityNumber)&&(identical(other.cityName, cityName) || other.cityName == cityName)&&(identical(other.provinceNumber, provinceNumber) || other.provinceNumber == provinceNumber)&&(identical(other.provinceName, provinceName) || other.provinceName == provinceName)&&const DeepCollectionEquality().equals(other.createdBy, createdBy)&&const DeepCollectionEquality().equals(other.modifiedBy, modifiedBy)&&(identical(other.province, province) || other.province == province));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,id,key,createDate,modifyDate,trash,provinceIdForeignKey,cityIdKey,name,productPrice,provinceCenter,cityNumber,cityName,provinceNumber,provinceName,const DeepCollectionEquality().hash(createdBy),const DeepCollectionEquality().hash(modifiedBy),province);

@override
String toString() {
  return 'City(id: $id, key: $key, createDate: $createDate, modifyDate: $modifyDate, trash: $trash, provinceIdForeignKey: $provinceIdForeignKey, cityIdKey: $cityIdKey, name: $name, productPrice: $productPrice, provinceCenter: $provinceCenter, cityNumber: $cityNumber, cityName: $cityName, provinceNumber: $provinceNumber, provinceName: $provinceName, createdBy: $createdBy, modifiedBy: $modifiedBy, province: $province)';
}


}

/// @nodoc
abstract mixin class _$CityCopyWith<$Res> implements $CityCopyWith<$Res> {
  factory _$CityCopyWith(_City value, $Res Function(_City) _then) = __$CityCopyWithImpl;
@override @useResult
$Res call({
 int? id, String? key, String? createDate, String? modifyDate, bool? trash, int? provinceIdForeignKey, int? cityIdKey, String? name, double? productPrice, bool? provinceCenter, int? cityNumber, String? cityName, int? provinceNumber, String? provinceName, dynamic createdBy, dynamic modifiedBy, int? province
});




}
/// @nodoc
class __$CityCopyWithImpl<$Res>
    implements _$CityCopyWith<$Res> {
  __$CityCopyWithImpl(this._self, this._then);

  final _City _self;
  final $Res Function(_City) _then;

/// Create a copy of City
/// with the given fields replaced by the non-null parameter values.
@override @pragma('vm:prefer-inline') $Res call({Object? id = freezed,Object? key = freezed,Object? createDate = freezed,Object? modifyDate = freezed,Object? trash = freezed,Object? provinceIdForeignKey = freezed,Object? cityIdKey = freezed,Object? name = freezed,Object? productPrice = freezed,Object? provinceCenter = freezed,Object? cityNumber = freezed,Object? cityName = freezed,Object? provinceNumber = freezed,Object? provinceName = freezed,Object? createdBy = freezed,Object? modifiedBy = freezed,Object? province = freezed,}) {
  return _then(_City(
id: freezed == id ? _self.id : id // ignore: cast_nullable_to_non_nullable
as int?,key: freezed == key ? _self.key : key // ignore: cast_nullable_to_non_nullable
as String?,createDate: freezed == createDate ? _self.createDate : createDate // ignore: cast_nullable_to_non_nullable
as String?,modifyDate: freezed == modifyDate ? _self.modifyDate : modifyDate // ignore: cast_nullable_to_non_nullable
as String?,trash: freezed == trash ? _self.trash : trash // ignore: cast_nullable_to_non_nullable
as bool?,provinceIdForeignKey: freezed == provinceIdForeignKey ? _self.provinceIdForeignKey : provinceIdForeignKey // ignore: cast_nullable_to_non_nullable
as int?,cityIdKey: freezed == cityIdKey ? _self.cityIdKey : cityIdKey // ignore: cast_nullable_to_non_nullable
as int?,name: freezed == name ? _self.name : name // ignore: cast_nullable_to_non_nullable
as String?,productPrice: freezed == productPrice ? _self.productPrice : productPrice // ignore: cast_nullable_to_non_nullable
as double?,provinceCenter: freezed == provinceCenter ? _self.provinceCenter : provinceCenter // ignore: cast_nullable_to_non_nullable
as bool?,cityNumber: freezed == cityNumber ? _self.cityNumber : cityNumber // ignore: cast_nullable_to_non_nullable
as int?,cityName: freezed == cityName ? _self.cityName : cityName // ignore: cast_nullable_to_non_nullable
as String?,provinceNumber: freezed == provinceNumber ? _self.provinceNumber : provinceNumber // ignore: cast_nullable_to_non_nullable
as int?,provinceName: freezed == provinceName ? _self.provinceName : provinceName // ignore: cast_nullable_to_non_nullable
as String?,createdBy: freezed == createdBy ? _self.createdBy : createdBy // ignore: cast_nullable_to_non_nullable
as dynamic,modifiedBy: freezed == modifiedBy ? _self.modifiedBy : modifiedBy // ignore: cast_nullable_to_non_nullable
as dynamic,province: freezed == province ? _self.province : province // ignore: cast_nullable_to_non_nullable
as int?,
  ));
}


}


/// @nodoc
mixin _$Address {

 Province? get province; City? get city; String? get address; String? get postalCode;
/// Create a copy of Address
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$AddressCopyWith<Address> get copyWith => _$AddressCopyWithImpl<Address>(this as Address, _$identity);

  /// Serializes this Address to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is Address&&(identical(other.province, province) || other.province == province)&&(identical(other.city, city) || other.city == city)&&(identical(other.address, address) || other.address == address)&&(identical(other.postalCode, postalCode) || other.postalCode == postalCode));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,province,city,address,postalCode);

@override
String toString() {
  return 'Address(province: $province, city: $city, address: $address, postalCode: $postalCode)';
}


}

/// @nodoc
abstract mixin class $AddressCopyWith<$Res>  {
  factory $AddressCopyWith(Address value, $Res Function(Address) _then) = _$AddressCopyWithImpl;
@useResult
$Res call({
 Province? province, City? city, String? address, String? postalCode
});


$ProvinceCopyWith<$Res>? get province;$CityCopyWith<$Res>? get city;

}
/// @nodoc
class _$AddressCopyWithImpl<$Res>
    implements $AddressCopyWith<$Res> {
  _$AddressCopyWithImpl(this._self, this._then);

  final Address _self;
  final $Res Function(Address) _then;

/// Create a copy of Address
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') @override $Res call({Object? province = freezed,Object? city = freezed,Object? address = freezed,Object? postalCode = freezed,}) {
  return _then(_self.copyWith(
province: freezed == province ? _self.province : province // ignore: cast_nullable_to_non_nullable
as Province?,city: freezed == city ? _self.city : city // ignore: cast_nullable_to_non_nullable
as City?,address: freezed == address ? _self.address : address // ignore: cast_nullable_to_non_nullable
as String?,postalCode: freezed == postalCode ? _self.postalCode : postalCode // ignore: cast_nullable_to_non_nullable
as String?,
  ));
}
/// Create a copy of Address
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$ProvinceCopyWith<$Res>? get province {
    if (_self.province == null) {
    return null;
  }

  return $ProvinceCopyWith<$Res>(_self.province!, (value) {
    return _then(_self.copyWith(province: value));
  });
}/// Create a copy of Address
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$CityCopyWith<$Res>? get city {
    if (_self.city == null) {
    return null;
  }

  return $CityCopyWith<$Res>(_self.city!, (value) {
    return _then(_self.copyWith(city: value));
  });
}
}


/// Adds pattern-matching-related methods to [Address].
extension AddressPatterns on Address {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _Address value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _Address() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _Address value)  $default,){
final _that = this;
switch (_that) {
case _Address():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _Address value)?  $default,){
final _that = this;
switch (_that) {
case _Address() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( Province? province,  City? city,  String? address,  String? postalCode)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _Address() when $default != null:
return $default(_that.province,_that.city,_that.address,_that.postalCode);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( Province? province,  City? city,  String? address,  String? postalCode)  $default,) {final _that = this;
switch (_that) {
case _Address():
return $default(_that.province,_that.city,_that.address,_that.postalCode);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( Province? province,  City? city,  String? address,  String? postalCode)?  $default,) {final _that = this;
switch (_that) {
case _Address() when $default != null:
return $default(_that.province,_that.city,_that.address,_that.postalCode);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _Address implements Address {
  const _Address({this.province, this.city, this.address, this.postalCode});
  factory _Address.fromJson(Map<String, dynamic> json) => _$AddressFromJson(json);

@override final  Province? province;
@override final  City? city;
@override final  String? address;
@override final  String? postalCode;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _Address&&(identical(other.province, province) || other.province == province)&&(identical(other.city, city) || other.city == city)&&(identical(other.address, address) || other.address == address)&&(identical(other.postalCode, postalCode) || other.postalCode == postalCode));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,province,city,address,postalCode);

@override
String toString() {
  return 'Address(province: $province, city: $city, address: $address, postalCode: $postalCode)';
}


}

/// @nodoc
abstract mixin class _$AddressCopyWith<$Res> implements $AddressCopyWith<$Res> {
  factory _$AddressCopyWith(_Address value, $Res Function(_Address) _then) = __$AddressCopyWithImpl;
@override @useResult
$Res call({
 Province? province, City? city, String? address, String? postalCode
});


@override $ProvinceCopyWith<$Res>? get province;@override $CityCopyWith<$Res>? get city;

}
/// @nodoc
class __$AddressCopyWithImpl<$Res>
    implements _$AddressCopyWith<$Res> {
  __$AddressCopyWithImpl(this._self, this._then);

  final _Address _self;
  final $Res Function(_Address) _then;

/// Create a copy of Address
/// with the given fields replaced by the non-null parameter values.
@override @pragma('vm:prefer-inline') $Res call({Object? province = freezed,Object? city = freezed,Object? address = freezed,Object? postalCode = freezed,}) {
  return _then(_Address(
province: freezed == province ? _self.province : province // ignore: cast_nullable_to_non_nullable
as Province?,city: freezed == city ? _self.city : city // ignore: cast_nullable_to_non_nullable
as City?,address: freezed == address ? _self.address : address // ignore: cast_nullable_to_non_nullable
as String?,postalCode: freezed == postalCode ? _self.postalCode : postalCode // ignore: cast_nullable_to_non_nullable
as String?,
  ));
}

/// Create a copy of Address
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$ProvinceCopyWith<$Res>? get province {
    if (_self.province == null) {
    return null;
  }

  return $ProvinceCopyWith<$Res>(_self.province!, (value) {
    return _then(_self.copyWith(province: value));
  });
}/// Create a copy of Address
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$CityCopyWith<$Res>? get city {
    if (_self.city == null) {
    return null;
  }

  return $CityCopyWith<$Res>(_self.city!, (value) {
    return _then(_self.copyWith(city: value));
  });
}
}


/// @nodoc
mixin _$Province {

 String? get key; String? get name;
/// Create a copy of Province
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$ProvinceCopyWith<Province> get copyWith => _$ProvinceCopyWithImpl<Province>(this as Province, _$identity);

  /// Serializes this Province to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is Province&&(identical(other.key, key) || other.key == key)&&(identical(other.name, name) || other.name == name));
}

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

@override
String toString() {
  return 'Province(key: $key, name: $name)';
}


}

/// @nodoc
abstract mixin class $ProvinceCopyWith<$Res>  {
  factory $ProvinceCopyWith(Province value, $Res Function(Province) _then) = _$ProvinceCopyWithImpl;
@useResult
$Res call({
 String? key, String? name
});




}
/// @nodoc
class _$ProvinceCopyWithImpl<$Res>
    implements $ProvinceCopyWith<$Res> {
  _$ProvinceCopyWithImpl(this._self, this._then);

  final Province _self;
  final $Res Function(Province) _then;

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

}


/// Adds pattern-matching-related methods to [Province].
extension ProvincePatterns on Province {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _Province value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _Province() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _Province value)  $default,){
final _that = this;
switch (_that) {
case _Province():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _Province value)?  $default,){
final _that = this;
switch (_that) {
case _Province() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( String? key,  String? name)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _Province() when $default != null:
return $default(_that.key,_that.name);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( String? key,  String? name)  $default,) {final _that = this;
switch (_that) {
case _Province():
return $default(_that.key,_that.name);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( String? key,  String? name)?  $default,) {final _that = this;
switch (_that) {
case _Province() when $default != null:
return $default(_that.key,_that.name);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _Province implements Province {
  const _Province({this.key, this.name});
  factory _Province.fromJson(Map<String, dynamic> json) => _$ProvinceFromJson(json);

@override final  String? key;
@override final  String? name;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _Province&&(identical(other.key, key) || other.key == key)&&(identical(other.name, name) || other.name == name));
}

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

@override
String toString() {
  return 'Province(key: $key, name: $name)';
}


}

/// @nodoc
abstract mixin class _$ProvinceCopyWith<$Res> implements $ProvinceCopyWith<$Res> {
  factory _$ProvinceCopyWith(_Province value, $Res Function(_Province) _then) = __$ProvinceCopyWithImpl;
@override @useResult
$Res call({
 String? key, String? name
});




}
/// @nodoc
class __$ProvinceCopyWithImpl<$Res>
    implements _$ProvinceCopyWith<$Res> {
  __$ProvinceCopyWithImpl(this._self, this._then);

  final _Province _self;
  final $Res Function(_Province) _then;

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


}


/// @nodoc
mixin _$Hatching {

 int? get age; int? get leftOver; String? get fileState; String? get hatchingDate; String? get allowHatching; int? get inspectionLosses; double? get inspectionLossesPercent; double? get totalLossesPercent; double? get poultryLossesPercent; double? get totalWeight;
/// Create a copy of Hatching
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$HatchingCopyWith<Hatching> get copyWith => _$HatchingCopyWithImpl<Hatching>(this as Hatching, _$identity);

  /// Serializes this Hatching to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is Hatching&&(identical(other.age, age) || other.age == age)&&(identical(other.leftOver, leftOver) || other.leftOver == leftOver)&&(identical(other.fileState, fileState) || other.fileState == fileState)&&(identical(other.hatchingDate, hatchingDate) || other.hatchingDate == hatchingDate)&&(identical(other.allowHatching, allowHatching) || other.allowHatching == allowHatching)&&(identical(other.inspectionLosses, inspectionLosses) || other.inspectionLosses == inspectionLosses)&&(identical(other.inspectionLossesPercent, inspectionLossesPercent) || other.inspectionLossesPercent == inspectionLossesPercent)&&(identical(other.totalLossesPercent, totalLossesPercent) || other.totalLossesPercent == totalLossesPercent)&&(identical(other.poultryLossesPercent, poultryLossesPercent) || other.poultryLossesPercent == poultryLossesPercent)&&(identical(other.totalWeight, totalWeight) || other.totalWeight == totalWeight));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,age,leftOver,fileState,hatchingDate,allowHatching,inspectionLosses,inspectionLossesPercent,totalLossesPercent,poultryLossesPercent,totalWeight);

@override
String toString() {
  return 'Hatching(age: $age, leftOver: $leftOver, fileState: $fileState, hatchingDate: $hatchingDate, allowHatching: $allowHatching, inspectionLosses: $inspectionLosses, inspectionLossesPercent: $inspectionLossesPercent, totalLossesPercent: $totalLossesPercent, poultryLossesPercent: $poultryLossesPercent, totalWeight: $totalWeight)';
}


}

/// @nodoc
abstract mixin class $HatchingCopyWith<$Res>  {
  factory $HatchingCopyWith(Hatching value, $Res Function(Hatching) _then) = _$HatchingCopyWithImpl;
@useResult
$Res call({
 int? age, int? leftOver, String? fileState, String? hatchingDate, String? allowHatching, int? inspectionLosses, double? inspectionLossesPercent, double? totalLossesPercent, double? poultryLossesPercent, double? totalWeight
});




}
/// @nodoc
class _$HatchingCopyWithImpl<$Res>
    implements $HatchingCopyWith<$Res> {
  _$HatchingCopyWithImpl(this._self, this._then);

  final Hatching _self;
  final $Res Function(Hatching) _then;

/// Create a copy of Hatching
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') @override $Res call({Object? age = freezed,Object? leftOver = freezed,Object? fileState = freezed,Object? hatchingDate = freezed,Object? allowHatching = freezed,Object? inspectionLosses = freezed,Object? inspectionLossesPercent = freezed,Object? totalLossesPercent = freezed,Object? poultryLossesPercent = freezed,Object? totalWeight = freezed,}) {
  return _then(_self.copyWith(
age: freezed == age ? _self.age : age // ignore: cast_nullable_to_non_nullable
as int?,leftOver: freezed == leftOver ? _self.leftOver : leftOver // ignore: cast_nullable_to_non_nullable
as int?,fileState: freezed == fileState ? _self.fileState : fileState // ignore: cast_nullable_to_non_nullable
as String?,hatchingDate: freezed == hatchingDate ? _self.hatchingDate : hatchingDate // ignore: cast_nullable_to_non_nullable
as String?,allowHatching: freezed == allowHatching ? _self.allowHatching : allowHatching // ignore: cast_nullable_to_non_nullable
as String?,inspectionLosses: freezed == inspectionLosses ? _self.inspectionLosses : inspectionLosses // ignore: cast_nullable_to_non_nullable
as int?,inspectionLossesPercent: freezed == inspectionLossesPercent ? _self.inspectionLossesPercent : inspectionLossesPercent // ignore: cast_nullable_to_non_nullable
as double?,totalLossesPercent: freezed == totalLossesPercent ? _self.totalLossesPercent : totalLossesPercent // ignore: cast_nullable_to_non_nullable
as double?,poultryLossesPercent: freezed == poultryLossesPercent ? _self.poultryLossesPercent : poultryLossesPercent // ignore: cast_nullable_to_non_nullable
as double?,totalWeight: freezed == totalWeight ? _self.totalWeight : totalWeight // ignore: cast_nullable_to_non_nullable
as double?,
  ));
}

}


/// Adds pattern-matching-related methods to [Hatching].
extension HatchingPatterns on Hatching {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _Hatching value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _Hatching() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _Hatching value)  $default,){
final _that = this;
switch (_that) {
case _Hatching():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _Hatching value)?  $default,){
final _that = this;
switch (_that) {
case _Hatching() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( int? age,  int? leftOver,  String? fileState,  String? hatchingDate,  String? allowHatching,  int? inspectionLosses,  double? inspectionLossesPercent,  double? totalLossesPercent,  double? poultryLossesPercent,  double? totalWeight)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _Hatching() when $default != null:
return $default(_that.age,_that.leftOver,_that.fileState,_that.hatchingDate,_that.allowHatching,_that.inspectionLosses,_that.inspectionLossesPercent,_that.totalLossesPercent,_that.poultryLossesPercent,_that.totalWeight);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( int? age,  int? leftOver,  String? fileState,  String? hatchingDate,  String? allowHatching,  int? inspectionLosses,  double? inspectionLossesPercent,  double? totalLossesPercent,  double? poultryLossesPercent,  double? totalWeight)  $default,) {final _that = this;
switch (_that) {
case _Hatching():
return $default(_that.age,_that.leftOver,_that.fileState,_that.hatchingDate,_that.allowHatching,_that.inspectionLosses,_that.inspectionLossesPercent,_that.totalLossesPercent,_that.poultryLossesPercent,_that.totalWeight);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( int? age,  int? leftOver,  String? fileState,  String? hatchingDate,  String? allowHatching,  int? inspectionLosses,  double? inspectionLossesPercent,  double? totalLossesPercent,  double? poultryLossesPercent,  double? totalWeight)?  $default,) {final _that = this;
switch (_that) {
case _Hatching() when $default != null:
return $default(_that.age,_that.leftOver,_that.fileState,_that.hatchingDate,_that.allowHatching,_that.inspectionLosses,_that.inspectionLossesPercent,_that.totalLossesPercent,_that.poultryLossesPercent,_that.totalWeight);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _Hatching implements Hatching {
  const _Hatching({this.age, this.leftOver, this.fileState, this.hatchingDate, this.allowHatching, this.inspectionLosses, this.inspectionLossesPercent, this.totalLossesPercent, this.poultryLossesPercent, this.totalWeight});
  factory _Hatching.fromJson(Map<String, dynamic> json) => _$HatchingFromJson(json);

@override final  int? age;
@override final  int? leftOver;
@override final  String? fileState;
@override final  String? hatchingDate;
@override final  String? allowHatching;
@override final  int? inspectionLosses;
@override final  double? inspectionLossesPercent;
@override final  double? totalLossesPercent;
@override final  double? poultryLossesPercent;
@override final  double? totalWeight;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _Hatching&&(identical(other.age, age) || other.age == age)&&(identical(other.leftOver, leftOver) || other.leftOver == leftOver)&&(identical(other.fileState, fileState) || other.fileState == fileState)&&(identical(other.hatchingDate, hatchingDate) || other.hatchingDate == hatchingDate)&&(identical(other.allowHatching, allowHatching) || other.allowHatching == allowHatching)&&(identical(other.inspectionLosses, inspectionLosses) || other.inspectionLosses == inspectionLosses)&&(identical(other.inspectionLossesPercent, inspectionLossesPercent) || other.inspectionLossesPercent == inspectionLossesPercent)&&(identical(other.totalLossesPercent, totalLossesPercent) || other.totalLossesPercent == totalLossesPercent)&&(identical(other.poultryLossesPercent, poultryLossesPercent) || other.poultryLossesPercent == poultryLossesPercent)&&(identical(other.totalWeight, totalWeight) || other.totalWeight == totalWeight));
}

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType,age,leftOver,fileState,hatchingDate,allowHatching,inspectionLosses,inspectionLossesPercent,totalLossesPercent,poultryLossesPercent,totalWeight);

@override
String toString() {
  return 'Hatching(age: $age, leftOver: $leftOver, fileState: $fileState, hatchingDate: $hatchingDate, allowHatching: $allowHatching, inspectionLosses: $inspectionLosses, inspectionLossesPercent: $inspectionLossesPercent, totalLossesPercent: $totalLossesPercent, poultryLossesPercent: $poultryLossesPercent, totalWeight: $totalWeight)';
}


}

/// @nodoc
abstract mixin class _$HatchingCopyWith<$Res> implements $HatchingCopyWith<$Res> {
  factory _$HatchingCopyWith(_Hatching value, $Res Function(_Hatching) _then) = __$HatchingCopyWithImpl;
@override @useResult
$Res call({
 int? age, int? leftOver, String? fileState, String? hatchingDate, String? allowHatching, int? inspectionLosses, double? inspectionLossesPercent, double? totalLossesPercent, double? poultryLossesPercent, double? totalWeight
});




}
/// @nodoc
class __$HatchingCopyWithImpl<$Res>
    implements _$HatchingCopyWith<$Res> {
  __$HatchingCopyWithImpl(this._self, this._then);

  final _Hatching _self;
  final $Res Function(_Hatching) _then;

/// Create a copy of Hatching
/// with the given fields replaced by the non-null parameter values.
@override @pragma('vm:prefer-inline') $Res call({Object? age = freezed,Object? leftOver = freezed,Object? fileState = freezed,Object? hatchingDate = freezed,Object? allowHatching = freezed,Object? inspectionLosses = freezed,Object? inspectionLossesPercent = freezed,Object? totalLossesPercent = freezed,Object? poultryLossesPercent = freezed,Object? totalWeight = freezed,}) {
  return _then(_Hatching(
age: freezed == age ? _self.age : age // ignore: cast_nullable_to_non_nullable
as int?,leftOver: freezed == leftOver ? _self.leftOver : leftOver // ignore: cast_nullable_to_non_nullable
as int?,fileState: freezed == fileState ? _self.fileState : fileState // ignore: cast_nullable_to_non_nullable
as String?,hatchingDate: freezed == hatchingDate ? _self.hatchingDate : hatchingDate // ignore: cast_nullable_to_non_nullable
as String?,allowHatching: freezed == allowHatching ? _self.allowHatching : allowHatching // ignore: cast_nullable_to_non_nullable
as String?,inspectionLosses: freezed == inspectionLosses ? _self.inspectionLosses : inspectionLosses // ignore: cast_nullable_to_non_nullable
as int?,inspectionLossesPercent: freezed == inspectionLossesPercent ? _self.inspectionLossesPercent : inspectionLossesPercent // ignore: cast_nullable_to_non_nullable
as double?,totalLossesPercent: freezed == totalLossesPercent ? _self.totalLossesPercent : totalLossesPercent // ignore: cast_nullable_to_non_nullable
as double?,poultryLossesPercent: freezed == poultryLossesPercent ? _self.poultryLossesPercent : poultryLossesPercent // ignore: cast_nullable_to_non_nullable
as double?,totalWeight: freezed == totalWeight ? _self.totalWeight : totalWeight // ignore: cast_nullable_to_non_nullable
as double?,
  ));
}


}


/// @nodoc
mixin _$Registrar {

 String? get date; String? get role; String? get fullName;
/// Create a copy of Registrar
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$RegistrarCopyWith<Registrar> get copyWith => _$RegistrarCopyWithImpl<Registrar>(this as Registrar, _$identity);

  /// Serializes this Registrar to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is Registrar&&(identical(other.date, date) || other.date == date)&&(identical(other.role, role) || other.role == role)&&(identical(other.fullName, fullName) || other.fullName == fullName));
}

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

@override
String toString() {
  return 'Registrar(date: $date, role: $role, fullName: $fullName)';
}


}

/// @nodoc
abstract mixin class $RegistrarCopyWith<$Res>  {
  factory $RegistrarCopyWith(Registrar value, $Res Function(Registrar) _then) = _$RegistrarCopyWithImpl;
@useResult
$Res call({
 String? date, String? role, String? fullName
});




}
/// @nodoc
class _$RegistrarCopyWithImpl<$Res>
    implements $RegistrarCopyWith<$Res> {
  _$RegistrarCopyWithImpl(this._self, this._then);

  final Registrar _self;
  final $Res Function(Registrar) _then;

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

}


/// Adds pattern-matching-related methods to [Registrar].
extension RegistrarPatterns on Registrar {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _Registrar value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _Registrar() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _Registrar value)  $default,){
final _that = this;
switch (_that) {
case _Registrar():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _Registrar value)?  $default,){
final _that = this;
switch (_that) {
case _Registrar() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( String? date,  String? role,  String? fullName)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _Registrar() when $default != null:
return $default(_that.date,_that.role,_that.fullName);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( String? date,  String? role,  String? fullName)  $default,) {final _that = this;
switch (_that) {
case _Registrar():
return $default(_that.date,_that.role,_that.fullName);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( String? date,  String? role,  String? fullName)?  $default,) {final _that = this;
switch (_that) {
case _Registrar() when $default != null:
return $default(_that.date,_that.role,_that.fullName);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _Registrar implements Registrar {
  const _Registrar({this.date, this.role, this.fullName});
  factory _Registrar.fromJson(Map<String, dynamic> json) => _$RegistrarFromJson(json);

@override final  String? date;
@override final  String? role;
@override final  String? fullName;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _Registrar&&(identical(other.date, date) || other.date == date)&&(identical(other.role, role) || other.role == role)&&(identical(other.fullName, fullName) || other.fullName == fullName));
}

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

@override
String toString() {
  return 'Registrar(date: $date, role: $role, fullName: $fullName)';
}


}

/// @nodoc
abstract mixin class _$RegistrarCopyWith<$Res> implements $RegistrarCopyWith<$Res> {
  factory _$RegistrarCopyWith(_Registrar value, $Res Function(_Registrar) _then) = __$RegistrarCopyWithImpl;
@override @useResult
$Res call({
 String? date, String? role, String? fullName
});




}
/// @nodoc
class __$RegistrarCopyWithImpl<$Res>
    implements _$RegistrarCopyWith<$Res> {
  __$RegistrarCopyWithImpl(this._self, this._then);

  final _Registrar _self;
  final $Res Function(_Registrar) _then;

/// Create a copy of Registrar
/// with the given fields replaced by the non-null parameter values.
@override @pragma('vm:prefer-inline') $Res call({Object? date = freezed,Object? role = freezed,Object? fullName = freezed,}) {
  return _then(_Registrar(
date: freezed == date ? _self.date : date // ignore: cast_nullable_to_non_nullable
as String?,role: freezed == role ? _self.role : role // ignore: cast_nullable_to_non_nullable
as String?,fullName: freezed == fullName ? _self.fullName : fullName // ignore: cast_nullable_to_non_nullable
as String?,
  ));
}


}


/// @nodoc
mixin _$VetFarm {

 String? get vetFarmFullName; String? get vetFarmMobile;
/// Create a copy of VetFarm
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$VetFarmCopyWith<VetFarm> get copyWith => _$VetFarmCopyWithImpl<VetFarm>(this as VetFarm, _$identity);

  /// Serializes this VetFarm to a JSON map.
  Map<String, dynamic> toJson();


@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is VetFarm&&(identical(other.vetFarmFullName, vetFarmFullName) || other.vetFarmFullName == vetFarmFullName)&&(identical(other.vetFarmMobile, vetFarmMobile) || other.vetFarmMobile == vetFarmMobile));
}

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

@override
String toString() {
  return 'VetFarm(vetFarmFullName: $vetFarmFullName, vetFarmMobile: $vetFarmMobile)';
}


}

/// @nodoc
abstract mixin class $VetFarmCopyWith<$Res>  {
  factory $VetFarmCopyWith(VetFarm value, $Res Function(VetFarm) _then) = _$VetFarmCopyWithImpl;
@useResult
$Res call({
 String? vetFarmFullName, String? vetFarmMobile
});




}
/// @nodoc
class _$VetFarmCopyWithImpl<$Res>
    implements $VetFarmCopyWith<$Res> {
  _$VetFarmCopyWithImpl(this._self, this._then);

  final VetFarm _self;
  final $Res Function(VetFarm) _then;

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

}


/// Adds pattern-matching-related methods to [VetFarm].
extension VetFarmPatterns on VetFarm {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _VetFarm value)?  $default,{required TResult orElse(),}){
final _that = this;
switch (_that) {
case _VetFarm() when $default != null:
return $default(_that);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case final Subclass2 value:
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _VetFarm value)  $default,){
final _that = this;
switch (_that) {
case _VetFarm():
return $default(_that);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case final Subclass value:
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _VetFarm value)?  $default,){
final _that = this;
switch (_that) {
case _VetFarm() when $default != null:
return $default(_that);case _:
  return null;

}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return orElse();
/// }
/// ```

@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( String? vetFarmFullName,  String? vetFarmMobile)?  $default,{required TResult orElse(),}) {final _that = this;
switch (_that) {
case _VetFarm() when $default != null:
return $default(_that.vetFarmFullName,_that.vetFarmMobile);case _:
  return orElse();

}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case Subclass2(:final field2):
///     return ...;
/// }
/// ```

@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( String? vetFarmFullName,  String? vetFarmMobile)  $default,) {final _that = this;
switch (_that) {
case _VetFarm():
return $default(_that.vetFarmFullName,_that.vetFarmMobile);case _:
  throw StateError('Unexpected subclass');

}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
///   case Subclass(:final field):
///     return ...;
///   case _:
///     return null;
/// }
/// ```

@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( String? vetFarmFullName,  String? vetFarmMobile)?  $default,) {final _that = this;
switch (_that) {
case _VetFarm() when $default != null:
return $default(_that.vetFarmFullName,_that.vetFarmMobile);case _:
  return null;

}
}

}

/// @nodoc
@JsonSerializable()

class _VetFarm implements VetFarm {
  const _VetFarm({this.vetFarmFullName, this.vetFarmMobile});
  factory _VetFarm.fromJson(Map<String, dynamic> json) => _$VetFarmFromJson(json);

@override final  String? vetFarmFullName;
@override final  String? vetFarmMobile;

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

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

@override
bool operator ==(Object other) {
  return identical(this, other) || (other.runtimeType == runtimeType&&other is _VetFarm&&(identical(other.vetFarmFullName, vetFarmFullName) || other.vetFarmFullName == vetFarmFullName)&&(identical(other.vetFarmMobile, vetFarmMobile) || other.vetFarmMobile == vetFarmMobile));
}

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

@override
String toString() {
  return 'VetFarm(vetFarmFullName: $vetFarmFullName, vetFarmMobile: $vetFarmMobile)';
}


}

/// @nodoc
abstract mixin class _$VetFarmCopyWith<$Res> implements $VetFarmCopyWith<$Res> {
  factory _$VetFarmCopyWith(_VetFarm value, $Res Function(_VetFarm) _then) = __$VetFarmCopyWithImpl;
@override @useResult
$Res call({
 String? vetFarmFullName, String? vetFarmMobile
});




}
/// @nodoc
class __$VetFarmCopyWithImpl<$Res>
    implements _$VetFarmCopyWith<$Res> {
  __$VetFarmCopyWithImpl(this._self, this._then);

  final _VetFarm _self;
  final $Res Function(_VetFarm) _then;

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


}

// dart format on
