public void Load()
        {
            string name;

            foreach (dynamic datum in new Datums("buddies").Populate("CharacterID = '{0}'", this.Parent.ID))
            {
                name = Database.Fetch("characters", "Name", "ID = '{0}'", datum.BuddyID);

                if (datum.Pending == 0)
                {
                    this.Add(new Buddy(name, datum.GroupName, datum.BuddyID, 0, true));
                }
                else
                {
                    this.pendingBuddies.Add(new Buddy(name, datum.GroupName, datum.BuddyID, 0, false));
                }

                Database.Delete("buddies", "CharacterID = '{0}' AND Pending = '1'", this.Parent.ID);
            }

            Dictionary <byte, List <int> > characterStorage = ChannelData.GetCharacterStorage(this.Parent.ID);

            foreach (Buddy loopBuddy in this)
            {
                if (this.IsMutualBuddy(loopBuddy.CharacterID))
                {
                    foreach (byte loopChannel in characterStorage.Keys)
                    {
                        if (characterStorage[loopChannel].Contains(loopBuddy.CharacterID))
                        {
                            loopBuddy.Channel = (byte)(loopChannel + 1);
                        }
                    }
                }
            }
        }