public IEnumerable <RawForm> ReadRawForms(FormType type)
        {
            var endian      = this._Endian;
            var input       = this._Stream;
            var isLocalized = this._IsLocalized;

            foreach (var kv in this._Forms)
            {
                if (kv.Value.Item1 == type)
                {
                    input.Position = kv.Value.Item2;
                    var instance = new RawForm();
                    instance.Deserialize(input, endian, isLocalized);
                    yield return(instance);
                }
            }
        }
        public RawForm ReadRawForm(uint id)
        {
            if (this._Forms.ContainsKey(id) == false)
            {
                return(null);
            }

            var endian      = this._Endian;
            var input       = this._Stream;
            var isLocalized = this._IsLocalized;

            var kv = this._Forms[id];

            input.Position = kv.Item2;
            var instance = new RawForm();

            instance.Deserialize(input, endian, isLocalized);
            return(instance);
        }