convert bodies to assembly component

How it can be done.
I have a assembly A ,It has a component named a .
Component a includes several solid bodies and these bodies are named(like x,y,z).

What I want to do is:
cycle the component a (assembly A is work part) , get all bodies in component a (only bodies named will be perfect) .
Next,create new components with the bodies name.
finally, wave link the body to the created component individually.

all done , assembly A will include component a,x,y,z. component x will have a linked body x,component y will have a linked body y,component z will have a linked body z.

This can be done?