public Object[] getCompletionVariants(
     String completionPrefix, PsiElement location, ProcessingContext context) {
   List<LookupElement> result = new ArrayList<LookupElement>();
   ScopeOwner scopeOwner = ScopeUtil.getScopeOwner(location);
   assert scopeOwner != null;
   final List<PyImportElement> importTargets = PyModuleType.getVisibleImports(scopeOwner);
   final int imported = myImportedModule.getImportedPrefix().getComponentCount();
   for (PyImportElement importTarget : importTargets) {
     final QualifiedName qName = importTarget.getImportedQName();
     if (qName != null && qName.matchesPrefix(myImportedModule.getImportedPrefix())) {
       final List<String> components = qName.getComponents();
       if (components.size() > imported) {
         String module = components.get(imported);
         result.add(LookupElementBuilder.create(module));
       }
     }
   }
   return result.toArray(new Object[result.size()]);
 }