fixing bad semantics update