optimisations and all is properties