void ( @NotNull final Collection<? extends PyMemberInfo<PyElement>> memberInfos, @NotNull final PyClass from, final PyClass @NotNull ... to ) { List<PyMemberInfo<PyElement>> memberInfosSorted = new ArrayList<>(memberInfos); memberInfosSorted.sort((o1, o2) -> PyDependenciesComparator.INSTANCE.compareAndStoreDependency(o1.getElementToStoreDependency(), o2.getElementToStoreDependency())); for (PyMemberInfo<PyElement> info : memberInfosSorted) { TypeSafeMovingStrategy.moveCheckingTypesAtRunTime(from, info.getMembersManager(), Collections.singleton(info), to); } PyDependenciesComparator.clearDependencyInfo(ContainerUtil.map(memberInfos, o -> o.getElementToStoreDependency())); }