use python-style constructors