first to firstordefault for all functions