initial version of components extraction