move member initialization to ctor