Numerous performance changes