implements basic edge(play and publish), with bug