modified component interface