adding components code