correctness of the constructor