``` unison unique type Foo = Foo1 unique type Bar = X Foo unique type Baz = X Foo useBar : Bar -> Nat useBar = cases Bar.X _ -> 1 ``` ``` ucm Loading changes detected in scratch.u. I found and typechecked these definitions in scratch.u. If you do an `add` or `update`, here's how your codebase would change: ⍟ These new definitions are ok to `add`: type Bar type Baz type Foo useBar : Bar -> Nat ``` ``` ucm myproject/main> add ⍟ I've added these definitions: type Bar type Baz type Foo useBar : Bar -> Nat ``` ``` unison unique type Foo = Foo1 | Foo2 ``` ``` ucm Loading changes detected in scratch.u. I found and typechecked these definitions in scratch.u. If you do an `add` or `update`, here's how your codebase would change: ⍟ These names already exist. You can `update` them to your new definition: type Foo ``` ``` ucm myproject/main> update Okay, I'm searching the branch for code that needs to be updated... That's done. Now I'm making sure everything typechecks... Everything typechecks, so I'm saving the results... Done. ```