https://1library.net/document/q7l37ory-role-agent-middleware-teaching-distributed-systems-agent-technologies.html