extracted components into several containers