add provider
add channels layout
add some changes
add service
add Observer