subobj struct and file accessors