* revised component diagram