make the constructor private