i'd call `add` something else. something like `fn` or `thingToDecorate` and generic