support for distinct functionality