further optimalizations again