constructor made public