further optimisations - total 35% speedup now for loading