added more component code