protected sealed override void Load(LogicJSONObject jsonObject)
        {
            this.Header.Load(jsonObject);
            this.Header.SetAllianceId(this.Id);
            this.Description = jsonObject.GetJSONString(AllianceDocument.JSON_ATTRIBUTE_DESCRIPTION).GetStringValue();

            LogicJSONArray memberArray = jsonObject.GetJSONArray(AllianceDocument.JSON_ATTRIBUTE_MEMBERS);

            for (int i = 0; i < memberArray.Size(); i++)
            {
                AllianceMemberEntry allianceMemberEntry = new AllianceMemberEntry();
                allianceMemberEntry.Load(memberArray.GetJSONObject(i));
                this.Members.Add(allianceMemberEntry.GetAvatarId(), allianceMemberEntry);
            }

            LogicJSONArray kickedMemberTimeArray = jsonObject.GetJSONArray(AllianceDocument.JSON_ATTRIBUTE_KICKED_MEMBER_TIMES);

            for (int i = 0; i < kickedMemberTimeArray.Size(); i++)
            {
                LogicJSONObject obj           = kickedMemberTimeArray.GetJSONObject(i);
                LogicJSONArray  avatarIdArray = obj.GetJSONArray(AllianceDocument.JSON_ATTRIBUTE_KICKED_MEMBER_TIMES_ID);
                LogicLong       avatarId      = new LogicLong(avatarIdArray.GetJSONNumber(0).GetIntValue(), avatarIdArray.GetJSONNumber(1).GetIntValue());
                DateTime        kickTime      = DateTime.Parse(obj.GetJSONString(AllianceDocument.JSON_ATTRIBUTE_KICKED_MEMBER_TIMES_TIME).GetStringValue());

                this.KickedMembersTimes.Add(avatarId, kickTime);
            }

            LogicJSONArray streamArray = jsonObject.GetJSONArray(AllianceDocument.JSON_ATTRIBUTE_STREAM_ENTRY_LIST);

            for (int i = 0; i < streamArray.Size(); i++)
            {
                LogicJSONArray avatarIdArray = streamArray.GetJSONArray(i);
                LogicLong      id            = new LogicLong(avatarIdArray.GetJSONNumber(0).GetIntValue(), avatarIdArray.GetJSONNumber(1).GetIntValue());

                this.StreamEntryList.Add(id);
            }
        }