tinkering with the direct GV semantics