functional diagrams