propagate semantics.