I'm trying to follow an author-year citation style which requires citations of the form "blah blah (A Corporation with a Long Name (ACWALN) 2018) … … something (ACWALN 2005)", but only if the long-named corporation is cited multiple times.

That is, I need to handle four cases for each name in the list:

1. A natural person (detectable by a given name), print just the surname or surname plus disambiguation initials as in default biblatex authoryear.cbx every time
2. A corporation cited only once, print the full name (the one in the author field)
3. A corporation cited for the first time which is then cited again, print the full name followed by the short name in brackets if there is one
4. A corporation cited for a subsequent time, print the short name if it exists and the long name if it doesn't.

Presumably I need to use `\cbx@ifnameseen` to select the appropriate name to print based on its value, then write all the names that are cited more than once to the aux file in suitable macros so the next time the file is processed the correct first citation can be printed.

**Is there a better way to achieve this, and if not, has anyone implemented it before?**

(No, I can't just use a sane citation style, and the official endnote style file doesn't work correctly so using Word instead of latex wouldn't help.)