start-of-file -> ??? -> sub-header sub-header -> /^sub / -> in-sub in-sub -> /^}$/ -> sub-header sub-header -> eof() || /^__(END|DATA)__$/ -> end-of-file