public T Read <T>() { var newT = Activator.CreateInstance <T>(); var length = ReadLength(); SerializerType serType = (SerializerType)mReadHelper.ReadByte(); string varName; long pos = mReadHelper.Position - 1; if (serType == SerializerType.All) { for (long i = 0; i < length;) { varName = (string)mReadHelper.Read(typeof(string)); SetFieldValue(newT, varName); i = mReadHelper.Position - pos; } } return(newT); }