added observable layer