private boolean isSynchronized(Object element) {
   if (element instanceof NonRootModelElement) {
     NonRootModelElement nrme = (NonRootModelElement) element;
     if (nrme.Issynchronized()) {
       // check children as well
       return childrenAreSynchronized(nrme);
     } else {
       return false;
     }
   }
   return true;
 }
 private boolean childrenAreSynchronized(NonRootModelElement element) {
   boolean result = true;
   result = element.Issynchronized();
   if (result) {
     List<?> children = new ArrayList<Object>();
     element.Collectreferencesforsynchronization(children, Synchronizationtype_c.Pull);
     for (Object child : children) {
       if (((NonRootModelElement) child).getModelRoot() instanceof Ooaofooa) {
         result = childrenAreSynchronized((NonRootModelElement) child);
         if (!result) {
           return result;
         }
       }
     }
   }
   return result;
 }