time precision reduction moved into constructor