add ObservableCollection logic