/// <summary>
 /// Initializes a new instance of the <see cref="GroupsV2GroupResponse" /> class.
 /// </summary>
 /// <param name="Detail">Detail.</param>
 /// <param name="Founder">Founder.</param>
 /// <param name="AlliedIds">AlliedIds.</param>
 /// <param name="ParentGroup">ParentGroup.</param>
 /// <param name="AllianceStatus">AllianceStatus.</param>
 /// <param name="GroupJoinInviteCount">GroupJoinInviteCount.</param>
 /// <param name="CurrentUserMemberMap">This property will be populated if the authenticated user is a member of the group. Note that because of account linking, a user can sometimes be part of a clan more than once. As such, this returns the highest member type available..</param>
 /// <param name="CurrentUserPotentialMemberMap">This property will be populated if the authenticated user is an applicant or has an outstanding invitation to join. Note that because of account linking, a user can sometimes be part of a clan more than once..</param>
 public GroupsV2GroupResponse(GroupsV2GroupV2 Detail = default(GroupsV2GroupV2), GroupsV2GroupMember Founder = default(GroupsV2GroupMember), List <long?> AlliedIds = default(List <long?>), GroupsV2GroupV2 ParentGroup = default(GroupsV2GroupV2), GroupsV2GroupAllianceStatus AllianceStatus = default(GroupsV2GroupAllianceStatus), int?GroupJoinInviteCount = default(int?), Dictionary <string, GroupsV2GroupMember> CurrentUserMemberMap = default(Dictionary <string, GroupsV2GroupMember>), Dictionary <string, GroupsV2GroupPotentialMember> CurrentUserPotentialMemberMap = default(Dictionary <string, GroupsV2GroupPotentialMember>))
 {
     this.Detail                        = Detail;
     this.Founder                       = Founder;
     this.AlliedIds                     = AlliedIds;
     this.ParentGroup                   = ParentGroup;
     this.AllianceStatus                = AllianceStatus;
     this.GroupJoinInviteCount          = GroupJoinInviteCount;
     this.CurrentUserMemberMap          = CurrentUserMemberMap;
     this.CurrentUserPotentialMemberMap = CurrentUserPotentialMemberMap;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="GroupsV2GroupPotentialMembership" /> class.
 /// </summary>
 /// <param name="Member">Member.</param>
 /// <param name="Group">Group.</param>
 public GroupsV2GroupPotentialMembership(GroupsV2GroupPotentialMember Member = default(GroupsV2GroupPotentialMember), GroupsV2GroupV2 Group = default(GroupsV2GroupV2))
 {
     this.Member = Member;
     this.Group  = Group;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="GroupsV2GroupMembershipBase" /> class.
 /// </summary>
 /// <param name="Group">Group.</param>
 public GroupsV2GroupMembershipBase(GroupsV2GroupV2 Group = default(GroupsV2GroupV2))
 {
     this.Group = Group;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="GroupsV2GroupMemberLeaveResult" /> class.
 /// </summary>
 /// <param name="Group">Group.</param>
 /// <param name="GroupDeleted">GroupDeleted.</param>
 public GroupsV2GroupMemberLeaveResult(GroupsV2GroupV2 Group = default(GroupsV2GroupV2), bool?GroupDeleted = default(bool?))
 {
     this.Group        = Group;
     this.GroupDeleted = GroupDeleted;
 }