Refactor 3: removing all trace of sugar and abstraction