modifications to component model