implement (left) diagrams properly