big performance improvement in some cases