little bit of optimisation so editor doesn't get unusable after a few components have been put in