some optimisation, testing pending