@Nullable
  public static ChainSearchTarget create(PsiType type) {
    if (type instanceof PsiArrayType) {
      return create((PsiArrayType)type);
    }
    else if (type instanceof PsiClassType) {
      return create((PsiClassType)type);
    }
    return null;
  }
@Nullable
  public static ChainSearchTarget create(PsiType type)