Added component architecture