public IEnumerable<TrackedChange<Element>> SynchronizeElements(IEnumerable<ElementPo> aplicationElements, IEnumerable<Element> dbElements )
 {
    // List<ElementPo> tmpAplicationElements = new List<ElementPo>(aplicationElements);
     TrackChangesCollection<Element> databaseElements=new TrackChangesCollection<Element>(dbElements);
     databaseElements.ClearChanges();
     SynchronizeTravers(aplicationElements.Where(x=>x.Type==1),dbElements,databaseElements,null);
     return databaseElements.GetChanges();
 }