private constructor
in progress