adding struct ctor