context: namespace Server.Items
  {
      public class Ruby : Item, IGem
      {
          [Constructable]
          public Ruby()
              : this(1)
          {
          }
  
          [Constructable]
          public Ruby(int amount)
              : base(0xF13)
          {
              Stackable = true;
              Amount = amount;
          }
  
          public Ruby(Serial serial)
              : base(serial)
          {
          }
  
          public override double DefaultWeight
          {
              get
              {
                  return 0.1;
              }
          }
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write((int)0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
              int version = reader.ReadInt();
          }
      }
  
      public class Ruby2 : Item, IGem
      {
          [Constructable]
          public Ruby2()
              : this(1)
          {
          }
  
          [Constructable]
          public Ruby2(int amount)
              : base(0xF14)
          {
              Stackable = true;
              Amount = amount;
          }
  
          public Ruby2(Serial serial)
              : base(serial)
          {
          }
  
          public override double DefaultWeight
          {
              get
              {
                  return 0.1;
              }
          }
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write((int)0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
              int version = reader.ReadInt();
          }
      }
  
      public class Ruby3 : Item, IGem
      {
          [Constructable]
          public Ruby3()
              : this(1)
          {
          }
  
          [Constructable]
          public Ruby3(int amount)
              : base(0xF1A)
          {
              Stackable = true;
              Amount = amount;
          }
  
          public Ruby3(Serial serial)
              : base(serial)
          {
          }
  
          public override double DefaultWeight
          {
              get
              {
                  return 0.1;
              }
          }
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write((int)0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
              int version = reader.ReadInt();
          }
      }
  
      public class Ruby4 : Item, IGem
      {
          [Constructable]
          public Ruby4()
              : this(1)
          {
          }
  
          [Constructable]
          public Ruby4(int amount)
              : base(0xF1C)
          {
              Stackable = true;
              Amount = amount;
          }
  
          public Ruby4(Serial serial)
              : base(serial)
          {
          }
  
          public override double DefaultWeight
          {
              get
              {
                  return 0.1;
              }
          }
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write((int)0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
              int version = reader.ReadInt();
          }
      }
  
      public class Ruby5 : Item, IGem
      {
          [Constructable]
          public Ruby5()
              : this(1)
          {
          }
  
          [Constructable]
          public Ruby5(int amount)
              : base(0xF1D)
          {
              Stackable = true;
              Amount = amount;
          }
  
          public Ruby5(Serial serial)
              : base(serial)
          {
          }
  
          public override double DefaultWeight
          {
              get
              {
                  return 0.1;
              }
          }
          public override void Serialize(GenericWriter writer)
          {
              base.Serialize(writer);
  
              writer.Write((int)0); // version
          }
  
          public override void Deserialize(GenericReader reader)
          {
              base.Deserialize(reader);
  
  
gt:             int version = reader.ReadInt();