major performance changes