incomplete - check for singletons