using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using HaloPlugins.H2.Xbox;

namespace HaloPlugins.Xbox
{
    public class ltmp : TagDefinition
    {
       public ltmp() : base("ltmp", "lightmap", 260, new LightmapDefinition())
       {
           Fields.AddRange(new IMetaNode[] {
           new Value("Search Distance Lower Bound", typeof(float)),
           new Value("Search Distance Upper Bound", typeof(float)),
           new Value("Luminels Per World Unit", typeof(float)),
           new Value("Output White Reference", typeof(float)),
           new Value("Output Black Reference", typeof(float)),
           new Value("Output Schlick Reference", typeof(float)),
           new Value("Diffuse Map Scale", typeof(float)),
           new Value("Sun Scale", typeof(float)),
           new Value("Sky Scale", typeof(float)),
           new Value("Indirect Scale", typeof(float)),
           new Value("Prt Scale", typeof(float)),
           new Value("Surface Light Scale", typeof(float)),
           new Value("Scenario Light Scale", typeof(float)),
           new Value("Lightprobe Interpolation Override", typeof(float)),
           new Padding(72),
           new TagBlock("Lightmap Groups", 104, 256, new IMetaNode[] { 
               new HaloPlugins.Enum("Type", new string[] { "Normal" }, 16),
               new Flags("Flags", new string[] { "Unused" }, 16),
               new Value("Structure Checksum", typeof(int)),
               new TagBlock("Section Palette", 1024, 128, 64, new IMetaNode[] { 
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
               }),
               new TagBlock("Writable Palettes", 1024, 128, 64, new IMetaNode[] { 
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
                    new Value("Palette Color", typeof(int)),
               }),
               new TagReference("Bitmap_Group", "bitm"),
               new TagBlock("Clusters", 84, 512, new IMetaNode[] { 
                   new Value("Total Vertex Count", typeof(short)),
                   new Value("Total Triangle Count", typeof(short)),
                   new Value("Total Part Count", typeof(short)),
                   new Value("Shadow-Casting Triangle Count", typeof(short)),
                   new Value("Shadow-Casting Part Count", typeof(short)),
                   new Value("Opaque Point Count", typeof(short)),
                   new Value("Opaque Vertex Count", typeof(short)),
                   new Value("Opaque Part Count", typeof(short)),
                   new Value("Opague Max Nodes/Vertex", typeof(short)),
                   new Value("Transparent Max Nodes/Vertex", typeof(short)),
                   new Value("Shadow-Casting Rigid Triangle", typeof(short)),
                   new HaloPlugins.Enum("Geometry Classification", new string[] { "World_Space" }, 32),
                   new Flags("Geometry Compression Flags", new string[] { "Compressed_Position", "Compressed_Texcoord", "Compressed_Secondary_Texcoord" }, 16),
                   new Value("Hardware Node Count", typeof(short)),
                   new Value("Node Map Size", typeof(short)),
                   new Value("Software Plane Count", typeof(short)),
                   new Value("Total Subpart Count", typeof(short)),
                   new Flags("Section Lighting Flags", new string[] { "Has_LM_Texcoords", "Has_LM_Inc._Rad.", "Has_LM_Colors", "Has_LM_Prt" }, 32),
                   new Value("Block Offset", typeof(int)),
                   new Value("Block Size", typeof(int)),
                   new Value("Section Data Size", typeof(int)),
                   new Value("Resource Data Size", typeof(int)),
                   new Padding(8),
                   new TagIndex("Owner Tag Section Offset", "ltmp"),
                   new Value("Unused", typeof(int)),
                   new Value("Unused", typeof(int)),
                   new Value("Unused", typeof(int)),
                   new Padding(4),
               }),
               new TagBlock("Cluster Render Info", 4, 1024, new IMetaNode[] { 
                   new Value("Bitmap Index", typeof(short)),
                   new Value("Palette Index", typeof(short)),
               }),
               new TagBlock("Poop Definitions", 84, 512, new IMetaNode[] { 
                   new Value("Total Vertex Count", typeof(short)),
                   new Value("Total Triangle Count", typeof(short)),
                   new Value("Total Part Count", typeof(short)),
                   new Value("Shadow-Casting Triangle Count", typeof(short)),
                   new Value("Shadow-Casting Part Count", typeof(short)),
                   new Value("Opaque Point Count", typeof(short)),
                   new Value("Opaque Vertex Count", typeof(short)),
                   new Value("Opaque Part Count", typeof(short)),
                   new Value("Opague Max Nodes/Vertex", typeof(short)),
                   new Value("Transparent Max Nodes/Vertex", typeof(short)),
                   new Value("Shadow-Casting Rigid Triangle", typeof(short)),
                   new HaloPlugins.Enum("Geometry Classification", new string[] { "World_Space" }, 32),
                   new Flags("Geometry Compression Flags", new string[] { "Compressed_Position", "Compressed_Texcoord", "Compressed_Secondary_Texcoord" }, 16),
                   new Value("Hardware Node Count", typeof(short)),
                   new Value("Node Map Size", typeof(short)),
                   new Value("Software Plane Count", typeof(short)),
                   new Value("Total Subpart Count", typeof(short)),
                   new Flags("Section Lighting Flags", new string[] { "Has_LM_Texcoords", "Has_LM_Inc._Rad.", "Has_LM_Colors", "Has_LM_Prt" }, 32),
                   new Value("Block Offset", typeof(int)),
                   new Value("Block Size", typeof(int)),
                   new Value("Section Data Size", typeof(int)),
                   new Value("Resource Data Size", typeof(int)),
                   new Padding(8),
                   new TagIndex("Owner Tag Section Offset", "ltmp"),
                   new Value("Unused", typeof(int)),
                   new Value("Unused", typeof(int)),
                   new Value("Unused", typeof(int)),
                   new Padding(4),
               }),
               new TagBlock("Lighting Environments", 220, 1024, new IMetaNode[] { 
                   new Value("Sample Point X", typeof(float)),
                   new Value("Sample Point Y", typeof(float)),
                   new Value("Sample Point Z", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Red Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Green Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Blue Coefficient", typeof(float)),
                   new Value("Mean Incoming Light Direction i", typeof(float)),
                   new Value("Mean Incoming Light Direction j", typeof(float)),
                   new Value("Mean Incoming Light Direction k", typeof(float)),
                   new Value("Incoming Light Intensity X", typeof(float)),
                   new Value("Incoming Light Intensity Y", typeof(float)),
                   new Value("Incoming Light Intensity Z", typeof(float)),
                   new Value("Specular Bitmap Index", typeof(int)),
                   new Value("Rotation Axis i", typeof(float)),
                   new Value("Rotation Axis j", typeof(float)),
                   new Value("Rotation Axis k", typeof(float)),
                   new Value("Rotation Speed", typeof(float)),
                   new Value("Bump Direction i", typeof(float)),
                   new Value("Bump Direction j", typeof(float)),
                   new Value("Bump Direction k", typeof(float)),
                   new Value("Color Tint", typeof(float)),
                   new HaloPlugins.Enum("Procedural Overide", new string[] {  }, 32),
                   new Flags("Flags", new string[] { "Leave_Me_Alone_Please" }, 32),
                   new Value("Procedural Param0 i", typeof(float)),
                   new Value("Procedural Param0 j", typeof(float)),
                   new Value("Procedural Param0 k", typeof(float)),
                   new Value("Procedural Param1.XYZ i", typeof(float)),
                   new Value("Procedural Param1.XYZ j", typeof(float)),
                   new Value("Procedural Param1.XYZ k", typeof(float)),
                   new Value("Procedural Param1.w", typeof(float)),
               }),
               new TagBlock("Geometry Buckets", 56, 1024, new IMetaNode[] { 
                   new Flags("Flags", new string[] { "Incident_Direction", "Color" }, 32),
                   new Padding(8),
                   new Value("Raw Offset", typeof(int)),
                   new Value("Raw Size", typeof(int)),
                   new Value("Section Data Size", typeof(int)),
                   new Value("Resource Data Size", typeof(int)),
                   new TagBlock("Resources", 16, -1, new IMetaNode[] { 
                       new HaloPlugins.Enum("Type", new string[] {  }, 32),
                       new Value("Primary Locator", typeof(short)),
                       new Value("Secondary Locator", typeof(short)),
                       new Value("Resource Data Size", typeof(int)),
                       new Value("Resource Data Offset", typeof(int)),
                   }),
                   new TagIndex("Owner Tag Section Offset", "ltmp"),
                   new Value("Unused", typeof(int)),
                   new Value("Unused", typeof(int)),
                   new Padding(8),
               }),
               new TagBlock("Instance Render Info", 4, 1024, new IMetaNode[] { 
                   new Value("Bitmap Index", typeof(short)),
                   new Value("Palette Index", typeof(short)),
               }),
               new TagBlock("Instance Bucket Refs", 12, 2000, new IMetaNode[] { 
                   new Value("Flags", typeof(short)),
                   new Value("Bucket Index", typeof(short)),
                   new TagBlock("Section Offsets", 4, 255, new IMetaNode[] { 
                       new Value("Section Offset", typeof(int)),
                   }),
               }),
               new TagBlock("Scenary Object Info", 12, 2000, new IMetaNode[] { 
                   new Value("Unique ID", typeof(int)),
                   new Value("Origin BSP Index", typeof(short)),
                   new Value("Type", typeof(byte)),
                   new Value("Source", typeof(byte)),
                   new Value("Render Model Checksum", typeof(int)),
               }),
               new TagBlock("Scenary Object Bucket Refs", 12, 2000, new IMetaNode[] { 
                   new Value("Flags", typeof(short)),
                   new Value("Bucket Index", typeof(short)),
                   new TagBlock("Section Offsets", 4, 255, new IMetaNode[] { 
                       new Value("Section Offset", typeof(int)),
                   }),
               }),
           }),
           new Padding(124),
           });
       }
    }
}
