Using AbstractHCInput as the base class