context: using System;
  using System.Collections.Generic;
  using Server.Items;
  
  namespace Server.Mobiles
  {
      public abstract class SBInfo
      {
          protected readonly IShopSellInfo m_BaseSellInfo = new InternalBaseSellInfo();
          public SBInfo()
          {
          }
  
          public virtual IShopSellInfo SellInfo
          {
              get
              {
                  return m_BaseSellInfo;
              }
          }
          public abstract List<GenericBuyInfo> BuyInfo { get; }
  
          public class InternalBaseSellInfo : GenericSellInfo
          {
              public InternalBaseSellInfo()
              {
                  this.Add(typeof(BlackPearl), 3);
                  this.Add(typeof(Bloodmoss), 3);
                  this.Add(typeof(MandrakeRoot), 2);
                  this.Add(typeof(Garlic), 2);
                  this.Add(typeof(Ginseng), 2);
                  this.Add(typeof(Nightshade), 2);
                  this.Add(typeof(SpidersSilk), 2);
                  this.Add(typeof(SulfurousAsh), 2);
                  this.Add(typeof(Bottle), 3);
                  this.Add(typeof(MortarPestle), 4);
                  this.Add(typeof(HairDye), 19);
  
                  this.Add(typeof(NightSightPotion), 7);
                  this.Add(typeof(AgilityPotion), 7);
                  this.Add(typeof(StrengthPotion), 7);
                  this.Add(typeof(RefreshPotion), 7);
                  this.Add(typeof(LesserCurePotion), 7);
                  this.Add(typeof(LesserHealPotion), 7);
                  this.Add(typeof(LesserPoisonPotion), 7);
                  this.Add(typeof(LesserExplosionPotion), 10);
  
                  this.Add(typeof(BreadLoaf), 3);
                  this.Add(typeof(FrenchBread), 1);
                  this.Add(typeof(Cake), 5);
                  this.Add(typeof(Cookies), 3);
                  this.Add(typeof(Muffins), 2);
                  this.Add(typeof(CheesePizza), 4);
                  this.Add(typeof(ApplePie), 5);
                  this.Add(typeof(PeachCobbler), 5);
                  this.Add(typeof(Quiche), 6);
                  this.Add(typeof(Dough), 4);
                  this.Add(typeof(JarHoney), 1);
                  this.Add(typeof(Pitcher), 5);
                  this.Add(typeof(SackFlour), 1);
                  this.Add(typeof(Eggs), 1);
  
                  this.Add(typeof(LapHarp), 10);
                  this.Add(typeof(Lute), 10);
                  this.Add(typeof(Drums), 10);
                  this.Add(typeof(Harp), 10);
                  this.Add(typeof(Tambourine), 10);
  
                  this.Add(typeof(WoodenBowlOfCarrots), 1);
                  this.Add(typeof(WoodenBowlOfCorn), 1);
                  this.Add(typeof(WoodenBowlOfLettuce), 1);
                  this.Add(typeof(WoodenBowlOfPeas), 1);
                  this.Add(typeof(EmptyPewterBowl), 1);
                  this.Add(typeof(PewterBowlOfCorn), 1);
                  this.Add(typeof(PewterBowlOfLettuce), 1);
                  this.Add(typeof(PewterBowlOfPeas), 1);
                  this.Add(typeof(PewterBowlOfPotatos), 1);
                  this.Add(typeof(WoodenBowlOfStew), 1);
                  this.Add(typeof(WoodenBowlOfTomatoSoup), 1);
                  this.Add(typeof(BeverageBottle), 3);
                  this.Add(typeof(Jug), 6);
                  this.Add(typeof(Pitcher), 5);
                  this.Add(typeof(GlassMug), 1);
                  this.Add(typeof(BreadLoaf), 3);
                  this.Add(typeof(CheeseWheel), 12);
                  this.Add(typeof(Ribs), 6);
                  this.Add(typeof(Peach), 1);
                  this.Add(typeof(Pear), 1);
                  this.Add(typeof(Grapes), 1);
                  this.Add(typeof(Apple), 1);
                  this.Add(typeof(Banana), 1);
                  this.Add(typeof(Candle), 3);
                  this.Add(typeof(Chessboard), 1);
                  this.Add(typeof(CheckerBoard), 1);
                  this.Add(typeof(Backgammon), 1);
                  this.Add(typeof(Dices), 1);
                  this.Add(typeof(ContractOfEmployment), 626);
  
                  this.Add(typeof(JarHoney), 1);
                  this.Add(typeof(Beeswax), 1);
  
                  this.Add(typeof(Tongs), 7);
                  this.Add(typeof(IronIngot), 4);
  
                  this.Add(typeof(Buckler), 25);
                  this.Add(typeof(BronzeShield), 33);
                  this.Add(typeof(MetalShield), 60);
                  this.Add(typeof(MetalKiteShield), 62);
                  this.Add(typeof(HeaterShield), 115);
                  this.Add(typeof(WoodenKiteShield), 35);
  
                  this.Add(typeof(WoodenShield), 15);
  
                  this.Add(typeof(PlateArms), 94);
                  this.Add(typeof(PlateChest), 121);
                  this.Add(typeof(PlateGloves), 72);
                  this.Add(typeof(PlateGorget), 52);
                  this.Add(typeof(PlateLegs), 109);
  
                  this.Add(typeof(FemalePlateChest), 113);
                  this.Add(typeof(FemaleLeatherChest), 18);
                  this.Add(typeof(FemaleStuddedChest), 25);
                  this.Add(typeof(LeatherShorts), 14);
                  this.Add(typeof(LeatherSkirt), 11);
                  this.Add(typeof(LeatherBustierArms), 11);
                  this.Add(typeof(StuddedBustierArms), 27);
  
                  this.Add(typeof(Bascinet), 9);
                  this.Add(typeof(CloseHelm), 9);
                  this.Add(typeof(Helmet), 9);
                  this.Add(typeof(NorseHelm), 9);
                  this.Add(typeof(PlateHelm), 10);
  
                  this.Add(typeof(ChainCoif), 6);
                  this.Add(typeof(ChainChest), 71);
                  this.Add(typeof(ChainLegs), 74);
  
                  this.Add(typeof(RingmailArms), 42);
                  this.Add(typeof(RingmailChest), 60);
                  this.Add(typeof(RingmailGloves), 26);
                  this.Add(typeof(RingmailLegs), 45);
  
                  this.Add(typeof(BattleAxe), 13);
                  this.Add(typeof(DoubleAxe), 26);
                  this.Add(typeof(ExecutionersAxe), 15);
                  this.Add(typeof(LargeBattleAxe), 16);
                  this.Add(typeof(Pickaxe), 11);
                  this.Add(typeof(TwoHandedAxe), 16);
                  this.Add(typeof(WarAxe), 14);
                  this.Add(typeof(Axe), 20);
  
                  this.Add(typeof(Bardiche), 30);
                  this.Add(typeof(Halberd), 21);
  
                  this.Add(typeof(ButcherKnife), 7);
                  this.Add(typeof(Cleaver), 7);
                  this.Add(typeof(Dagger), 10);
                  this.Add(typeof(SkinningKnife), 7);
  
                  this.Add(typeof(Club), 8);
                  this.Add(typeof(HammerPick), 13);
                  this.Add(typeof(Mace), 14);
                  this.Add(typeof(Maul), 10);
                  this.Add(typeof(WarHammer), 12);
                  this.Add(typeof(WarMace), 15);
  
                  this.Add(typeof(HeavyCrossbow), 27);
                  this.Add(typeof(Bow), 17);
                  this.Add(typeof(Crossbow), 23);
  
                  if (Core.AOS)
                  {
                      this.Add(typeof(CompositeBow), 25);
                      this.Add(typeof(RepeatingCrossbow), 28);
                      this.Add(typeof(Scepter), 20);
                      this.Add(typeof(BladedStaff), 20);
                      this.Add(typeof(Scythe), 19);
                      this.Add(typeof(BoneHarvester), 17);
                      this.Add(typeof(Scepter), 18);
                      this.Add(typeof(BladedStaff), 16);
                      this.Add(typeof(Pike), 19);
                      this.Add(typeof(DoubleBladedStaff), 17);
                      this.Add(typeof(Lance), 17);
                      this.Add(typeof(CrescentBlade), 18);
                  }
  
                  this.Add(typeof(Spear), 15);
                  this.Add(typeof(Pitchfork), 9);
                  this.Add(typeof(ShortSpear), 11);
  
                  this.Add(typeof(BlackStaff), 11);
                  this.Add(typeof(GnarledStaff), 8);
                  this.Add(typeof(QuarterStaff), 9);
                  this.Add(typeof(ShepherdsCrook), 10);
  
                  this.Add(typeof(SmithHammer), 10);
  
                  this.Add(typeof(Broadsword), 17);
                  this.Add(typeof(Cutlass), 12);
                  this.Add(typeof(Katana), 16);
                  this.Add(typeof(Kryss), 16);
                  this.Add(typeof(Longsword), 27);
                  this.Add(typeof(Scimitar), 18);
                  this.Add(typeof(ThinLongsword), 13);
                  this.Add(typeof(VikingSword), 27);
  
                  this.Add(typeof(FletcherTools), 1);
  
                  this.Add(typeof(RawRibs), 8);
                  this.Add(typeof(RawLambLeg), 4);
                  this.Add(typeof(RawChickenLeg), 3);
                  this.Add(typeof(RawBird), 4);
                  this.Add(typeof(Bacon), 3);
                  this.Add(typeof(Sausage), 9);
                  this.Add(typeof(Ham), 13);
                  this.Add(typeof(ButcherKnife), 7);
                  this.Add(typeof(Cleaver), 7);
                  this.Add(typeof(SkinningKnife), 7);
  
                  this.Add(typeof(WoodenBox), 7);
                  this.Add(typeof(SmallCrate), 5);
                  this.Add(typeof(MediumCrate), 6);
                  this.Add(typeof(LargeCrate), 7);
                  this.Add(typeof(WoodenChest), 15);
  
                  this.Add(typeof(LargeTable), 10);
                  this.Add(typeof(Nightstand), 7);
                  this.Add(typeof(YewWoodTable), 10);
  
                  this.Add(typeof(Throne), 24);
                  this.Add(typeof(WoodenThrone), 6);
                  this.Add(typeof(Stool), 6);
                  this.Add(typeof(FootStool), 6);
  
                  this.Add(typeof(FancyWoodenChairCushion), 12);
                  this.Add(typeof(WoodenChairCushion), 10);
                  this.Add(typeof(WoodenChair), 8);
                  this.Add(typeof(BambooChair), 6);
                  this.Add(typeof(WoodenBench), 6);
  
                  this.Add(typeof(Saw), 9);
                  this.Add(typeof(Scorp), 6);
                  this.Add(typeof(SmoothingPlane), 6);
                  this.Add(typeof(DrawKnife), 6);
                  this.Add(typeof(Froe), 6);
                  this.Add(typeof(Hammer), 14);
                  this.Add(typeof(Inshave), 6);
                  this.Add(typeof(JointingPlane), 6);
                  this.Add(typeof(MouldingPlane), 6);
                  this.Add(typeof(DovetailSaw), 7);
                  this.Add(typeof(Board), 2);
                  this.Add(typeof(Axle), 1);
  
                  this.Add(typeof(Club), 13);
  
                  this.Add(typeof(Lute), 10);
                  this.Add(typeof(LapHarp), 10);
                  this.Add(typeof(Tambourine), 10);
                  this.Add(typeof(Drums), 10);
  
                  this.Add(typeof(Log), 1);
  
                  this.Add(typeof(Shoes), 4);
                  this.Add(typeof(Boots), 5);
                  this.Add(typeof(ThighBoots), 7);
                  this.Add(typeof(Sandals), 2);
  
                  this.Add(typeof(CheeseWheel), 12);
                  this.Add(typeof(CookedBird), 8);
                  this.Add(typeof(RoastPig), 53);
                  this.Add(typeof(Cake), 5);
                  this.Add(typeof(JarHoney), 1);
                  this.Add(typeof(SackFlour), 1);
                  this.Add(typeof(BreadLoaf), 2);
                  this.Add(typeof(ChickenLeg), 3);
                  this.Add(typeof(LambLeg), 4);
                  this.Add(typeof(Skillet), 1);
                  this.Add(typeof(FlourSifter), 1);
                  this.Add(typeof(RollingPin), 1);
                  this.Add(typeof(Muffins), 1);
                  this.Add(typeof(ApplePie), 3);
  
                  this.Add(typeof(WoodenBowlOfCarrots), 1);
                  this.Add(typeof(WoodenBowlOfCorn), 1);
                  this.Add(typeof(WoodenBowlOfLettuce), 1);
                  this.Add(typeof(WoodenBowlOfPeas), 1);
                  this.Add(typeof(EmptyPewterBowl), 1);
                  this.Add(typeof(PewterBowlOfCorn), 1);
                  this.Add(typeof(PewterBowlOfLettuce), 1);
                  this.Add(typeof(PewterBowlOfPeas), 1);
                  this.Add(typeof(PewterBowlOfPotatos), 1);
                  this.Add(typeof(WoodenBowlOfStew), 1);
                  this.Add(typeof(WoodenBowlOfTomatoSoup), 1);
  
                  this.Add(typeof(Pitcher), 5);
                  this.Add(typeof(Eggs), 1);
                  this.Add(typeof(Apple), 1);
                  this.Add(typeof(Grapes), 1);
                  this.Add(typeof(Watermelon), 3);
                  this.Add(typeof(YellowGourd), 1);
                  this.Add(typeof(GreenGourd), 1);
                  this.Add(typeof(Pumpkin), 5);
                  this.Add(typeof(Onion), 1);
                  this.Add(typeof(Lettuce), 2);
                  this.Add(typeof(Squash), 1);
                  this.Add(typeof(Carrot), 1);
                  this.Add(typeof(HoneydewMelon), 3);
                  this.Add(typeof(Cantaloupe), 3);
                  this.Add(typeof(Cabbage), 2);
                  this.Add(typeof(Lemon), 1);
                  this.Add(typeof(Lime), 1);
                  this.Add(typeof(Peach), 1);
                  this.Add(typeof(Pear), 1);
                  this.Add(typeof(SheafOfHay), 1);
  
                  this.Add(typeof(RawFishSteak), 1);
                  this.Add(typeof(Fish), 1);
                  //TODO: Add( typeof( SmallFish ), 1 );
                  this.Add(typeof(FishingPole), 7);
  
                  this.Add(typeof(Bandage), 1);
  
                  this.Add(typeof(Hides), 2);
  
                  this.Add(typeof(BlackPearl), 3);
                  this.Add(typeof(Bloodmoss), 3);
                  this.Add(typeof(MandrakeRoot), 2);
                  this.Add(typeof(Garlic), 2);
                  this.Add(typeof(Ginseng), 2);
                  this.Add(typeof(Nightshade), 2);
                  this.Add(typeof(SpidersSilk), 2);
                  this.Add(typeof(SulfurousAsh), 2);
                  this.Add(typeof(Bottle), 3);
                  this.Add(typeof(MortarPestle), 4);
  
                  this.Add(typeof(NightSightPotion), 7);
                  this.Add(typeof(AgilityPotion), 7);
                  this.Add(typeof(StrengthPotion), 7);
                  this.Add(typeof(RefreshPotion), 7);
                  this.Add(typeof(LesserCurePotion), 7);
                  this.Add(typeof(LesserHealPotion), 7);
                  this.Add(typeof(LesserPoisonPotion), 7);
                  this.Add(typeof(LesserExplosionPotion), 10);
  
                  this.Add(typeof(GlassblowingBook), 5000);
                  this.Add(typeof(SandMiningBook), 5000);
                  this.Add(typeof(Blowpipe), 10);
  
                  this.Add(typeof(HairDye), 30);
                  this.Add(typeof(SpecialBeardDye), 250000);
                  this.Add(typeof(SpecialHairDye), 250000);
  
                  this.Add(typeof(Bandage), 1);
                  this.Add(typeof(LesserHealPotion), 7);
                  this.Add(typeof(RefreshPotion), 7);
                  this.Add(typeof(Garlic), 2);
                  this.Add(typeof(Ginseng), 2);
  
                  this.Add(typeof(Bloodmoss), 3);
                  this.Add(typeof(MandrakeRoot), 2);
                  this.Add(typeof(Garlic), 2);
                  this.Add(typeof(Ginseng), 2);
                  this.Add(typeof(Nightshade), 2);
                  this.Add(typeof(Bottle), 3);
                  this.Add(typeof(MortarPestle), 4);
  
                  this.Add(typeof(BlackPearl), 3);
                  this.Add(typeof(Bloodmoss), 3);
                  this.Add(typeof(MandrakeRoot), 2);
                  this.Add(typeof(Garlic), 2);
                  this.Add(typeof(Ginseng), 2);
                  this.Add(typeof(Nightshade), 2);
                  this.Add(typeof(SpidersSilk), 2);
                  this.Add(typeof(SulfurousAsh), 2);
                  this.Add(typeof(RecallRune), 8);
                  this.Add(typeof(Spellbook), 9);
                  this.Add(typeof(BlankScroll), 3);
  
                  this.Add(typeof(NightSightPotion), 7);
                  this.Add(typeof(AgilityPotion), 7);
                  this.Add(typeof(StrengthPotion), 7);
                  this.Add(typeof(RefreshPotion), 7);
                  this.Add(typeof(LesserCurePotion), 7);
                  this.Add(typeof(LesserHealPotion), 7);
  
                  Type[] types = Loot.RegularScrollTypes;
  
  
gt:                 for (int i = 0; i < types.Length; ++i)