fixed more extreme cases