struct tentative semantics written