more stuff added on the semantics'
merge