better model handling