about 10% speed up