@startuml class Account { pgpkey } Account --> "0..*" Community : is a member of Account --> "0..*" Node : trusts Account --> "0..*" Node : send transactions with Account --> "*" Transaction : send Account --> "*" Transaction : receive Account --> "0..*" Wallet : owns class Community { } Community "1" -- "1" Currency : uses Community "1" --> "1..*" Node : known nodes class Node { address port auth } Node --> "1" Community class Transaction { value currency sender receiver } class Wallet { currency coins } @enduml