preparation - this is not the final solution;