half done add_compoment