private void makeListLocal(TaxonListVM list) {
     LocalLists.Add(list);
     if (list.Model.IsPublicList)
         PublicLists.Remove(list);
     else
         PersonalLists.Remove(list);
 }
 private void removeLocalList(TaxonListVM list) {
     Taxa.deleteTaxonListIfExists(list.Model);
     LocalLists.Remove(list);
     list.Model.IsSelected = false;
     if (list.Model.IsPublicList)
         PublicLists.Add(list);
     else
         PersonalLists.Add(list);
 }
 private IObservable<TaxonListVM> DownloadTaxonList(TaxonListVM vm) {
     Taxa.addTaxonList(vm.Model);
     return
     Service.DownloadTaxonListChunked(vm.Model)
     .Do(chunk => Taxa.addTaxonNames(chunk, vm.Model), (Exception ex) => Taxa.deleteTaxonListIfExists(vm.Model))
     .IgnoreElements()
     .Select(_ => vm)
     .Concat(Observable.Return(vm));
 }