public UserGroupModel Clone()
        {
            var user = new UserGroupModel
            {
                Id             = Id,
                CreatedDate    = CreatedDate,
                GroupCode      = (string)GroupCode.Clone(),
                GroupName      = (string)GroupName.Clone(),
                PermissionRank = PermissionRank
            };

            if (AvaliableCommands != null)
            {
                foreach (var u in AvaliableCommands)
                {
                    user.AvaliableCommands.Add((string)u.Clone());
                }
            }

            return(user);
        }