deals with special cases