Can we no longer assume that all units have a `decompose` method?