Add support for extensible variants