seperated all components in better divisions