diagram + sugar interface