helper constructors and methods for components