reformatted ctors, allowing for suffix to be set by extensions