got rid of special cases