semantics update