Lots of changes!

all components