make it possible to omit first argument in constructor