public override void OnResponse(NetState sender, RelayInfo info)
        {
            if (m_Key.Deleted)
            {
                return;
            }
            else if (info.ButtonID == 1)
            {
                m_Key.WithdrawRegs(typeof(BlackPearl), m_From);
            }
            else if (info.ButtonID == 2)
            {
                m_Key.WithdrawRegs(typeof(Bloodmoss), m_From);
            }
            else if (info.ButtonID == 3)
            {
                m_Key.WithdrawRegs(typeof(Garlic), m_From);
            }
            else if (info.ButtonID == 4)
            {
                m_Key.WithdrawRegs(typeof(Ginseng), m_From);
            }
            else if (info.ButtonID == 5)
            {
                m_Key.WithdrawRegs(typeof(MandrakeRoot), m_From);
            }
            else if (info.ButtonID == 6)
            {
                m_Key.WithdrawRegs(typeof(Nightshade), m_From);
            }
            else if (info.ButtonID == 7)
            {
                m_Key.WithdrawRegs(typeof(SulfurousAsh), m_From);
            }
            else if (info.ButtonID == 8)
            {
                m_Key.WithdrawRegs(typeof(SpidersSilk), m_From);
            }
            else if (info.ButtonID == 9)
            {
                m_Key.WithdrawRegs(typeof(BatWing), m_From);
            }
            else if (info.ButtonID == 10)
            {
                m_Key.WithdrawRegs(typeof(GraveDust), m_From);
            }
            else if (info.ButtonID == 11)
            {
                m_Key.WithdrawRegs(typeof(DaemonBlood), m_From);
            }
            else if (info.ButtonID == 12)
            {
                m_Key.WithdrawRegs(typeof(NoxCrystal), m_From);
            }
            else if (info.ButtonID == 13)
            {
                m_Key.WithdrawRegs(typeof(PigIron), m_From);
            }
            else if (info.ButtonID == 14)
            {
                m_Key.WithdrawRegs(typeof(SpringWater), m_From);
            }
            else if (info.ButtonID == 15)
            {
                m_Key.WithdrawRegs(typeof(PetrafiedWood), m_From);
            }
            else if (info.ButtonID == 16)
            {
                m_Key.WithdrawRegs(typeof(DestroyingAngel), m_From);
            }

            else if (info.ButtonID == 17)
            {
                if (m_Key.Beeswax > m_Key.WithdrawIncrement)
                {
                    m_From.AddToBackpack(new Beeswax(m_Key.WithdrawIncrement));
                    m_Key.Beeswax = m_Key.Beeswax - m_Key.WithdrawIncrement;
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                }
                else if (m_Key.Beeswax > 0)
                {
                    m_From.AddToBackpack(new Beeswax(m_Key.Beeswax));
                    m_Key.Beeswax = 0;
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                }
                else
                {
                    m_From.SendMessage("You do not have any of that resource!");
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                    m_Key.BeginCombine(m_From);
                }
            }

            else if (info.ButtonID == 18)
            {
                if (m_Key.Bone > m_Key.WithdrawIncrement)
                {
                    m_From.AddToBackpack(new Bone(m_Key.WithdrawIncrement));
                    m_Key.Bone = m_Key.Bone - m_Key.WithdrawIncrement;
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                }
                else if (m_Key.Bone > 0)
                {
                    m_From.AddToBackpack(new Bone(m_Key.Bone));
                    m_Key.Bone = 0;
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                }
                else
                {
                    m_From.SendMessage("You do not have any of that resource!");
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                    m_Key.BeginCombine(m_From);
                }
            }
            else if (info.ButtonID == 19)
            {
                m_Key.WithdrawRegs(typeof(DaemonBone), m_From);
            }

            else if (info.ButtonID == 20)
            {
                if (m_Key.BlankScroll > m_Key.WithdrawIncrement)
                {
                    m_From.AddToBackpack(new BlankScroll(m_Key.WithdrawIncrement));
                    m_Key.BlankScroll = m_Key.BlankScroll - m_Key.WithdrawIncrement;
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                }
                else if (m_Key.BlankScroll > 0)
                {
                    m_From.AddToBackpack(new BlankScroll(m_Key.BlankScroll));
                    m_Key.BlankScroll = 0;
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                }
                else
                {
                    m_From.SendMessage("You do not have any of that resource!");
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                    m_Key.BeginCombine(m_From);
                }
            }
            else if (info.ButtonID == 21)
            {
                if (m_Key.Sand > 0)
                {
                    m_From.AddToBackpack(new Sand());
                    m_Key.Sand = (m_Key.Sand - 1);
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                }
                else
                {
                    m_From.SendMessage("You do not have any of that resource!");
                    m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
                    m_Key.BeginCombine(m_From);
                }
            }
            else if (info.ButtonID == 22)
            {
                m_Key.BeginCombine(m_From);
                m_From.SendGump(new SpellCastersBoxGump(m_From, m_Key));
            }
        }