docs for constructors