draft of new component system