graph LR
subgraph "Framework - Abstract Layer"
A[Entity
Abstract Base Class]
B[Simulator~T~
Abstract Template Method]
C[EntityReader~T~
Abstract]
D[IEntityFactory~T~
Interface]
end
subgraph "Morg Specialisation - Concrete Layer"
E[Morg
Concrete Entity]
F[Dish
Concrete Simulator]
G[MorgReader
Concrete Reader]
H[MorgFactory
Concrete Factory]
end
A -->|inherits| E
B -->|inherits| F
C -->|inherits| G
D -->|implements| H