/// giftsReceivedLeaderboard : {"daily":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}],"monthly":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}],"weekly":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}]}
/// giftsSendLeaderboard : {"daily":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}],"monthly":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}],"weekly":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}]}
/// roomGiftsLeaderboard : {"daily":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}],"monthly":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}],"weekly":[{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}]}

class SCBannerLeaderboardRes {
  SCBannerLeaderboardRes({
      GiftsReceivedLeaderboard? giftsReceivedLeaderboard,
      GiftsSendLeaderboard? giftsSendLeaderboard,
      RoomGiftsLeaderboard? roomGiftsLeaderboard,}){
    _giftsReceivedLeaderboard = giftsReceivedLeaderboard;
    _giftsSendLeaderboard = giftsSendLeaderboard;
    _roomGiftsLeaderboard = roomGiftsLeaderboard;
}

  SCBannerLeaderboardRes.fromJson(dynamic json) {
    _giftsReceivedLeaderboard = json['giftsReceivedLeaderboard'] != null ? GiftsReceivedLeaderboard.fromJson(json['giftsReceivedLeaderboard']) : null;
    _giftsSendLeaderboard = json['giftsSendLeaderboard'] != null ? GiftsSendLeaderboard.fromJson(json['giftsSendLeaderboard']) : null;
    _roomGiftsLeaderboard = json['roomGiftsLeaderboard'] != null ? RoomGiftsLeaderboard.fromJson(json['roomGiftsLeaderboard']) : null;
  }
  GiftsReceivedLeaderboard? _giftsReceivedLeaderboard;
  GiftsSendLeaderboard? _giftsSendLeaderboard;
  RoomGiftsLeaderboard? _roomGiftsLeaderboard;

  GiftsReceivedLeaderboard? get giftsReceivedLeaderboard => _giftsReceivedLeaderboard;
  GiftsSendLeaderboard? get giftsSendLeaderboard => _giftsSendLeaderboard;
  RoomGiftsLeaderboard? get roomGiftsLeaderboard => _roomGiftsLeaderboard;

  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    if (_giftsReceivedLeaderboard != null) {
      map['giftsReceivedLeaderboard'] = _giftsReceivedLeaderboard?.toJson();
    }
    if (_giftsSendLeaderboard != null) {
      map['giftsSendLeaderboard'] = _giftsSendLeaderboard?.toJson();
    }
    if (_roomGiftsLeaderboard != null) {
      map['roomGiftsLeaderboard'] = _roomGiftsLeaderboard?.toJson();
    }
    return map;
  }

}

/// daily : [{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}]
/// monthly : [{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}]
/// weekly : [{"avatar":"","id":0,"nickname":"","quantity":0,"quantityFormat":""}]

class RoomGiftsLeaderboard {
  RoomGiftsLeaderboard({
      List<LeaderboardUser>? daily,
      List<LeaderboardUser>? monthly,
      List<LeaderboardUser>? weekly,}){
    _daily = daily;
    _monthly = monthly;
    _weekly = weekly;
}

  RoomGiftsLeaderboard.fromJson(dynamic json) {
    if (json['daily'] != null) {
      _daily = [];
      json['daily'].forEach((v) {
        _daily?.add(LeaderboardUser.fromJson(v));
      });
    }
    if (json['monthly'] != null) {
      _monthly = [];
      json['monthly'].forEach((v) {
        _monthly?.add(LeaderboardUser.fromJson(v));
      });
    }
    if (json['weekly'] != null) {
      _weekly = [];
      json['weekly'].forEach((v) {
        _weekly?.add(LeaderboardUser.fromJson(v));
      });
    }
  }
  List<LeaderboardUser>? _daily;
  List<LeaderboardUser>? _monthly;
  List<LeaderboardUser>? _weekly;

  List<LeaderboardUser>? get daily => _daily;
  List<LeaderboardUser>? get monthly => _monthly;
  List<LeaderboardUser>? get weekly => _weekly;

  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    if (_daily != null) {
      map['daily'] = _daily?.map((v) => v.toJson()).toList();
    }
    if (_monthly != null) {
      map['monthly'] = _monthly?.map((v) => v.toJson()).toList();
    }
    if (_weekly != null) {
      map['weekly'] = _weekly?.map((v) => v.toJson()).toList();
    }
    return map;
  }

}

/// avatar : ""
/// id : 0
/// nickname : ""
/// quantity : 0
/// quantityFormat : ""

class LeaderboardUser {
  LeaderboardUser({
      String? avatar,
      String? id,
      String? nickname,
      String? quantity,
      String? quantityFormat,}){
    _avatar = avatar;
    _id = id;
    _nickname = nickname;
    _quantity = quantity;
    _quantityFormat = quantityFormat;
}

  LeaderboardUser.fromJson(dynamic json) {
    _avatar = json['avatar'];
    _id = json['id'];
    _nickname = json['nickname'];
    _quantity = json['quantity'];
    _quantityFormat = json['quantityFormat'];
  }
  String? _avatar;
  String? _id;
  String? _nickname;
  String? _quantity;
  String? _quantityFormat;

  String? get avatar => _avatar;
  String? get id => _id;
  String? get nickname => _nickname;
  String? get quantity => _quantity;
  String? get quantityFormat => _quantityFormat;

  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    map['avatar'] = _avatar;
    map['id'] = _id;
    map['nickname'] = _nickname;
    map['quantity'] = _quantity;
    map['quantityFormat'] = _quantityFormat;
    return map;
  }

}

class GiftsSendLeaderboard {
  GiftsSendLeaderboard({
      List<LeaderboardUser>? daily,
      List<LeaderboardUser>? monthly,
      List<LeaderboardUser>? weekly,}){
    _daily = daily;
    _monthly = monthly;
    _weekly = weekly;
}

  GiftsSendLeaderboard.fromJson(dynamic json) {
    if (json['daily'] != null) {
      _daily = [];
      json['daily'].forEach((v) {
        _daily?.add(LeaderboardUser.fromJson(v));
      });
    }
    if (json['monthly'] != null) {
      _monthly = [];
      json['monthly'].forEach((v) {
        _monthly?.add(LeaderboardUser.fromJson(v));
      });
    }
    if (json['weekly'] != null) {
      _weekly = [];
      json['weekly'].forEach((v) {
        _weekly?.add(LeaderboardUser.fromJson(v));
      });
    }
  }
  List<LeaderboardUser>? _daily;
  List<LeaderboardUser>? _monthly;
  List<LeaderboardUser>? _weekly;

  List<LeaderboardUser>? get daily => _daily;
  List<LeaderboardUser>? get monthly => _monthly;
  List<LeaderboardUser>? get weekly => _weekly;

  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    if (_daily != null) {
      map['daily'] = _daily?.map((v) => v.toJson()).toList();
    }
    if (_monthly != null) {
      map['monthly'] = _monthly?.map((v) => v.toJson()).toList();
    }
    if (_weekly != null) {
      map['weekly'] = _weekly?.map((v) => v.toJson()).toList();
    }
    return map;
  }

}

/// avatar : ""
/// id : 0
/// nickname : ""
/// quantity : 0
/// quantityFormat : ""


/// avatar : ""
/// id : 0
/// nickname : ""
/// quantity : 0
/// quantityFormat : ""


class GiftsReceivedLeaderboard {
  GiftsReceivedLeaderboard({
      List<LeaderboardUser>? daily,
      List<LeaderboardUser>? monthly,
      List<LeaderboardUser>? weekly,}){
    _daily = daily;
    _monthly = monthly;
    _weekly = weekly;
}

  GiftsReceivedLeaderboard.fromJson(dynamic json) {
    if (json['daily'] != null) {
      _daily = [];
      json['daily'].forEach((v) {
        _daily?.add(LeaderboardUser.fromJson(v));
      });
    }
    if (json['monthly'] != null) {
      _monthly = [];
      json['monthly'].forEach((v) {
        _monthly?.add(LeaderboardUser.fromJson(v));
      });
    }
    if (json['weekly'] != null) {
      _weekly = [];
      json['weekly'].forEach((v) {
        _weekly?.add(LeaderboardUser.fromJson(v));
      });
    }
  }
  List<LeaderboardUser>? _daily;
  List<LeaderboardUser>? _monthly;
  List<LeaderboardUser>? _weekly;

  List<LeaderboardUser>? get daily => _daily;
  List<LeaderboardUser>? get monthly => _monthly;
  List<LeaderboardUser>? get weekly => _weekly;

  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    if (_daily != null) {
      map['daily'] = _daily?.map((v) => v.toJson()).toList();
    }
    if (_monthly != null) {
      map['monthly'] = _monthly?.map((v) => v.toJson()).toList();
    }
    if (_weekly != null) {
      map['weekly'] = _weekly?.map((v) => v.toJson()).toList();
    }
    return map;
  }

}

/// avatar : ""
/// id : 0
/// nickname : ""
/// quantity : 0
/// quantityFormat : ""


