source level optimisations