@startuml
participant core as c
participant proc_macro_helpers as pmh
participant proc_macro_impl as pmi
participant proc_macros as pm
participant derives as d
participant frunk as f
participant laws as l
c --> d: dev-dependency
c --> pm: dev-dependency
c --> f: dev-dependency
pmh -> c: dependency
pmi -> c: dependency
pmi -> pmh: dependency
pm -> c: dependency
pm -> pmi: dependency
pm --> f: dev-dependency
d -> c: dependency
d -> pmh: dependency
f -> c: dependency
f -> pm: dependency
f -> d: dependency
f --> l: dev-dependency
l -> c: dependency
l -> f: dependency
@enduml