public Index(KaitaiStream p__io, Tsm p__parent = null, Tsm p__root = null) : base(p__io)
 {
     m_parent  = p__parent;
     m_root    = p__root;
     f_entries = false;
     _read();
 }
 public Tsm(KaitaiStream p__io, KaitaiStruct p__parent = null, Tsm p__root = null) : base(p__io)
 {
     m_parent = p__parent;
     m_root   = p__root ?? this;
     f_index  = false;
     _read();
 }
 public IndexEntry(KaitaiStream p__io, Tsm.Index.IndexHeader p__parent = null, Tsm p__root = null) : base(p__io)
 {
     m_parent = p__parent;
     m_root   = p__root;
     f_block  = false;
     _read();
 }
 public Header(KaitaiStream p__io, Tsm p__parent = null, Tsm p__root = null) : base(p__io)
 {
     m_parent = p__parent;
     m_root   = p__root;
     _read();
 }
 public BlockEntry(KaitaiStream p__io, Tsm.Index.IndexHeader.IndexEntry p__parent = null, Tsm p__root = null) : base(p__io)
 {
     m_parent = p__parent;
     m_root   = p__root;
     _read();
 }