import java.io
import java.lang
import scala
import scala.collection
import scala.collection.immutable
import scala.reflect
import scala.reflect.internal.settings
import scala.reflect.internal.util
import scala.reflect.io
import scala.runtime
import scala.util
import typing



class Annotations:
    @staticmethod
    def $init$($this: 'Annotations') -> None: ...
    def Annotation(self) -> 'Annotations.AnnotationExtractor': ...
    def ArrayArgument(self) -> 'Annotations.ArrayArgumentExtractor': ...
    def LiteralArgument(self) -> 'Annotations.LiteralArgumentExtractor': ...
    def NestedArgument(self) -> 'Annotations.NestedArgumentExtractor': ...
    def annotationToTree(self, ann: 'Annotations.AnnotationApi') -> 'Trees.TreeApi': ...
    def treeToAnnotation(self, tree: 'Trees.TreeApi') -> 'Annotations.AnnotationApi': ...
    class AnnotationApi:
        @staticmethod
        def $init$($this: 'Annotations.AnnotationApi') -> None: ...
        def javaArgs(self) -> scala.collection.immutable.ListMap['Names.NameApi', 'Annotations.JavaArgumentApi']: ...
        def scalaArgs(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def tpe(self) -> 'Types.TypeApi': ...
        def tree(self) -> 'Trees.TreeApi': ...
    class AnnotationExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, tpe: 'Types.TypeApi', scalaArgs: scala.collection.immutable.List['Trees.TreeApi'], javaArgs: scala.collection.immutable.ListMap['Names.NameApi', 'Annotations.JavaArgumentApi']) -> 'Annotations.AnnotationApi': ...
        @typing.overload
        def apply(self, tree: 'Trees.TreeApi') -> 'Annotations.AnnotationApi': ...
        def unapply(self, ann: 'Annotations.AnnotationApi') -> scala.Option[scala.Tuple3['Types.TypeApi', scala.collection.immutable.List['Trees.TreeApi'], scala.collection.immutable.ListMap['Names.NameApi', 'Annotations.JavaArgumentApi']]]: ...
    class ArrayArgumentApi:
        def args(self) -> typing.List['Annotations.JavaArgumentApi']: ...
    class ArrayArgumentExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, args: typing.List['Annotations.JavaArgumentApi']) -> 'Annotations.ArrayArgumentApi': ...
        def unapply(self, arg: 'Annotations.ArrayArgumentApi') -> scala.Option[typing.List['Annotations.JavaArgumentApi']]: ...
    class JavaArgumentApi: ...
    class LiteralArgumentApi:
        def value(self) -> 'Constants.ConstantApi': ...
    class LiteralArgumentExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, value: 'Constants.ConstantApi') -> 'Annotations.LiteralArgumentApi': ...
        def unapply(self, arg: 'Annotations.LiteralArgumentApi') -> scala.Option['Constants.ConstantApi']: ...
    class NestedArgumentApi:
        def annotation(self) -> 'Annotations.AnnotationApi': ...
    class NestedArgumentExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, annotation: 'Annotations.AnnotationApi') -> 'Annotations.NestedArgumentApi': ...
        def unapply(self, arg: 'Annotations.NestedArgumentApi') -> scala.Option['Annotations.AnnotationApi']: ...

class Constants:
    @staticmethod
    def $init$($this: 'Constants') -> None: ...
    def Constant(self) -> 'Constants.ConstantExtractor': ...
    class ConstantApi:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def tpe(self) -> 'Types.TypeApi': ...
        def value(self) -> typing.Any: ...
    class ConstantExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, value: typing.Any) -> 'Constants.ConstantApi': ...
        def unapply(self, arg: 'Constants.ConstantApi') -> scala.Option[typing.Any]: ...

class FlagSets:
    @staticmethod
    def $init$($this: 'FlagSets') -> None: ...
    def Flag(self) -> 'FlagSets.FlagValues': ...
    def NoFlags(self) -> typing.Any: ...
    def addFlagOps(self, left: typing.Any) -> 'FlagSets.FlagOps': ...
    class FlagOps:
        def $bar(self, right: typing.Any) -> typing.Any: ...
    class FlagValues:
        def ABSOVERRIDE(self) -> typing.Any: ...
        def ABSTRACT(self) -> typing.Any: ...
        def ARTIFACT(self) -> typing.Any: ...
        def BYNAMEPARAM(self) -> typing.Any: ...
        def CASE(self) -> typing.Any: ...
        def CASEACCESSOR(self) -> typing.Any: ...
        def CONTRAVARIANT(self) -> typing.Any: ...
        def COVARIANT(self) -> typing.Any: ...
        def DEFAULTINIT(self) -> typing.Any: ...
        def DEFAULTPARAM(self) -> typing.Any: ...
        def DEFERRED(self) -> typing.Any: ...
        def ENUM(self) -> typing.Any: ...
        def FINAL(self) -> typing.Any: ...
        def IMPLICIT(self) -> typing.Any: ...
        def INTERFACE(self) -> typing.Any: ...
        def LAZY(self) -> typing.Any: ...
        def LOCAL(self) -> typing.Any: ...
        def MACRO(self) -> typing.Any: ...
        def MUTABLE(self) -> typing.Any: ...
        def OVERRIDE(self) -> typing.Any: ...
        def PARAM(self) -> typing.Any: ...
        def PARAMACCESSOR(self) -> typing.Any: ...
        def PRESUPER(self) -> typing.Any: ...
        def PRIVATE(self) -> typing.Any: ...
        def PROTECTED(self) -> typing.Any: ...
        def SEALED(self) -> typing.Any: ...
        def STABLE(self) -> typing.Any: ...
        def SYNTHETIC(self) -> typing.Any: ...
        def TRAIT(self) -> typing.Any: ...

class ImplicitTags:
    def AlternativeTag(self) -> scala.reflect.ClassTag['Trees.AlternativeApi']: ...
    def AnnotatedTag(self) -> scala.reflect.ClassTag['Trees.AnnotatedApi']: ...
    def AnnotatedTypeTag(self) -> scala.reflect.ClassTag['Types.AnnotatedTypeApi']: ...
    def AnnotationTag(self) -> scala.reflect.ClassTag[Annotations.AnnotationApi]: ...
    def AppliedTypeTreeTag(self) -> scala.reflect.ClassTag['Trees.AppliedTypeTreeApi']: ...
    def ApplyTag(self) -> scala.reflect.ClassTag['Trees.ApplyApi']: ...
    def ArrayArgumentTag(self) -> scala.reflect.ClassTag[Annotations.ArrayArgumentApi]: ...
    def AssignOrNamedArgTag(self) -> scala.reflect.ClassTag['Trees.AssignOrNamedArgApi']: ...
    def AssignTag(self) -> scala.reflect.ClassTag['Trees.AssignApi']: ...
    def BindTag(self) -> scala.reflect.ClassTag['Trees.BindApi']: ...
    def BlockTag(self) -> scala.reflect.ClassTag['Trees.BlockApi']: ...
    def BoundedWildcardTypeTag(self) -> scala.reflect.ClassTag['Types.BoundedWildcardTypeApi']: ...
    def CaseDefTag(self) -> scala.reflect.ClassTag['Trees.CaseDefApi']: ...
    def ClassDefTag(self) -> scala.reflect.ClassTag['Trees.ClassDefApi']: ...
    def ClassInfoTypeTag(self) -> scala.reflect.ClassTag['Types.ClassInfoTypeApi']: ...
    def ClassSymbolTag(self) -> scala.reflect.ClassTag['Symbols.ClassSymbolApi']: ...
    def CompoundTypeTag(self) -> scala.reflect.ClassTag['Types.CompoundTypeApi']: ...
    def CompoundTypeTreeTag(self) -> scala.reflect.ClassTag['Trees.CompoundTypeTreeApi']: ...
    def ConstantTag(self) -> scala.reflect.ClassTag[Constants.ConstantApi]: ...
    def ConstantTypeTag(self) -> scala.reflect.ClassTag['Types.ConstantTypeApi']: ...
    def DefDefTag(self) -> scala.reflect.ClassTag['Trees.DefDefApi']: ...
    def DefTreeTag(self) -> scala.reflect.ClassTag['Trees.DefTreeApi']: ...
    def ExistentialTypeTag(self) -> scala.reflect.ClassTag['Types.ExistentialTypeApi']: ...
    def ExistentialTypeTreeTag(self) -> scala.reflect.ClassTag['Trees.ExistentialTypeTreeApi']: ...
    def FlagSetTag(self) -> scala.reflect.ClassTag[typing.Any]: ...
    def FunctionTag(self) -> scala.reflect.ClassTag['Trees.FunctionApi']: ...
    def GenericApplyTag(self) -> scala.reflect.ClassTag['Trees.GenericApplyApi']: ...
    def IdentTag(self) -> scala.reflect.ClassTag['Trees.IdentApi']: ...
    def IfTag(self) -> scala.reflect.ClassTag['Trees.IfApi']: ...
    def ImplDefTag(self) -> scala.reflect.ClassTag['Trees.ImplDefApi']: ...
    def ImportSelectorTag(self) -> scala.reflect.ClassTag['Trees.ImportSelectorApi']: ...
    def ImportTag(self) -> scala.reflect.ClassTag['Trees.ImportApi']: ...
    def JavaArgumentTag(self) -> scala.reflect.ClassTag[Annotations.JavaArgumentApi]: ...
    def LabelDefTag(self) -> scala.reflect.ClassTag['Trees.LabelDefApi']: ...
    def LiteralArgumentTag(self) -> scala.reflect.ClassTag[Annotations.LiteralArgumentApi]: ...
    def LiteralTag(self) -> scala.reflect.ClassTag['Trees.LiteralApi']: ...
    def MatchTag(self) -> scala.reflect.ClassTag['Trees.MatchApi']: ...
    def MemberDefTag(self) -> scala.reflect.ClassTag['Trees.MemberDefApi']: ...
    def MemberScopeTag(self) -> scala.reflect.ClassTag['Scopes.MemberScopeApi']: ...
    def MethodSymbolTag(self) -> scala.reflect.ClassTag['Symbols.MethodSymbolApi']: ...
    def MethodTypeTag(self) -> scala.reflect.ClassTag['Types.MethodTypeApi']: ...
    def MirrorTag(self) -> scala.reflect.ClassTag['Mirror']: ...
    def ModifiersTag(self) -> scala.reflect.ClassTag['Trees.ModifiersApi']: ...
    def ModuleDefTag(self) -> scala.reflect.ClassTag['Trees.ModuleDefApi']: ...
    def ModuleSymbolTag(self) -> scala.reflect.ClassTag['Symbols.ModuleSymbolApi']: ...
    def NameTag(self) -> scala.reflect.ClassTag['Names.NameApi']: ...
    def NameTreeTag(self) -> scala.reflect.ClassTag['Trees.NameTreeApi']: ...
    def NestedArgumentTag(self) -> scala.reflect.ClassTag[Annotations.NestedArgumentApi]: ...
    def NewTag(self) -> scala.reflect.ClassTag['Trees.NewApi']: ...
    def NullaryMethodTypeTag(self) -> scala.reflect.ClassTag['Types.NullaryMethodTypeApi']: ...
    def PackageDefTag(self) -> scala.reflect.ClassTag['Trees.PackageDefApi']: ...
    def PolyTypeTag(self) -> scala.reflect.ClassTag['Types.PolyTypeApi']: ...
    def PositionTag(self) -> scala.reflect.ClassTag['Position']: ...
    def RefTreeTag(self) -> scala.reflect.ClassTag['Trees.RefTreeApi']: ...
    def RefinedTypeTag(self) -> scala.reflect.ClassTag['Types.RefinedTypeApi']: ...
    def ReturnTag(self) -> scala.reflect.ClassTag['Trees.ReturnApi']: ...
    def RuntimeClassTag(self) -> scala.reflect.ClassTag[typing.Any]: ...
    def ScopeTag(self) -> scala.reflect.ClassTag['Scopes.ScopeApi']: ...
    def SelectFromTypeTreeTag(self) -> scala.reflect.ClassTag['Trees.SelectFromTypeTreeApi']: ...
    def SelectTag(self) -> scala.reflect.ClassTag['Trees.SelectApi']: ...
    def SingleTypeTag(self) -> scala.reflect.ClassTag['Types.SingleTypeApi']: ...
    def SingletonTypeTag(self) -> scala.reflect.ClassTag['Types.SingletonTypeApi']: ...
    def SingletonTypeTreeTag(self) -> scala.reflect.ClassTag['Trees.SingletonTypeTreeApi']: ...
    def StarTag(self) -> scala.reflect.ClassTag['Trees.StarApi']: ...
    def SuperTag(self) -> scala.reflect.ClassTag['Trees.SuperApi']: ...
    def SuperTypeTag(self) -> scala.reflect.ClassTag['Types.SuperTypeApi']: ...
    def SymTreeTag(self) -> scala.reflect.ClassTag['Trees.SymTreeApi']: ...
    def SymbolTag(self) -> scala.reflect.ClassTag['Symbols.SymbolApi']: ...
    def TemplateTag(self) -> scala.reflect.ClassTag['Trees.TemplateApi']: ...
    def TermNameTag(self) -> scala.reflect.ClassTag['Names.TermNameApi']: ...
    def TermSymbolTag(self) -> scala.reflect.ClassTag['Symbols.TermSymbolApi']: ...
    def TermTreeTag(self) -> scala.reflect.ClassTag['Trees.TermTreeApi']: ...
    def ThisTag(self) -> scala.reflect.ClassTag['Trees.ThisApi']: ...
    def ThisTypeTag(self) -> scala.reflect.ClassTag['Types.ThisTypeApi']: ...
    def ThrowTag(self) -> scala.reflect.ClassTag['Trees.ThrowApi']: ...
    def TreeCopierTag(self) -> scala.reflect.ClassTag['Trees.TreeCopierOps']: ...
    def TreeTag(self) -> scala.reflect.ClassTag['Trees.TreeApi']: ...
    def TryTag(self) -> scala.reflect.ClassTag['Trees.TryApi']: ...
    def TypTreeTag(self) -> scala.reflect.ClassTag['Trees.TypTreeApi']: ...
    def TypeApplyTag(self) -> scala.reflect.ClassTag['Trees.TypeApplyApi']: ...
    def TypeBoundsTag(self) -> scala.reflect.ClassTag['Types.TypeBoundsApi']: ...
    def TypeBoundsTreeTag(self) -> scala.reflect.ClassTag['Trees.TypeBoundsTreeApi']: ...
    def TypeDefTag(self) -> scala.reflect.ClassTag['Trees.TypeDefApi']: ...
    def TypeNameTag(self) -> scala.reflect.ClassTag['Names.TypeNameApi']: ...
    def TypeRefTag(self) -> scala.reflect.ClassTag['Types.TypeRefApi']: ...
    def TypeSymbolTag(self) -> scala.reflect.ClassTag['Symbols.TypeSymbolApi']: ...
    def TypeTagg(self) -> scala.reflect.ClassTag['Types.TypeApi']: ...
    def TypeTreeTag(self) -> scala.reflect.ClassTag['Trees.TypeTreeApi']: ...
    def TypedTag(self) -> scala.reflect.ClassTag['Trees.TypedApi']: ...
    def UnApplyTag(self) -> scala.reflect.ClassTag['Trees.UnApplyApi']: ...
    def ValDefTag(self) -> scala.reflect.ClassTag['Trees.ValDefApi']: ...
    def ValOrDefDefTag(self) -> scala.reflect.ClassTag['Trees.ValOrDefDefApi']: ...

_Mirror__U = typing.TypeVar('_Mirror__U', bound='Universe')  # <U>
class Mirror(typing.Generic[_Mirror__U]):
    def __init__(self): ...
    def EmptyPackage(self) -> 'Symbols.ModuleSymbolApi': ...
    def EmptyPackageClass(self) -> 'Symbols.ClassSymbolApi': ...
    def RootClass(self) -> 'Symbols.ClassSymbolApi': ...
    def RootPackage(self) -> 'Symbols.ModuleSymbolApi': ...
    def staticClass(self, fullName: typing.Union[java.lang.String, str]) -> 'Symbols.ClassSymbolApi': ...
    def staticModule(self, fullName: typing.Union[java.lang.String, str]) -> 'Symbols.ModuleSymbolApi': ...
    def staticPackage(self, fullName: typing.Union[java.lang.String, str]) -> 'Symbols.ModuleSymbolApi': ...
    _symbolOf__T = typing.TypeVar('_symbolOf__T')  # <T>
    def symbolOf(self, evidence$3: 'TypeTags.WeakTypeTag'[_symbolOf__T]) -> 'Symbols.TypeSymbolApi': ...
    _typeOf__T = typing.TypeVar('_typeOf__T')  # <T>
    def typeOf(self, evidence$2: 'TypeTags.TypeTag'[_typeOf__T]) -> 'Types.TypeApi': ...
    def universe(self) -> _Mirror__U: ...
    _weakTypeOf__T = typing.TypeVar('_weakTypeOf__T')  # <T>
    def weakTypeOf(self, evidence$1: 'TypeTags.WeakTypeTag'[_weakTypeOf__T]) -> 'Types.TypeApi': ...

class Names:
    @staticmethod
    def $init$($this: 'Names') -> None: ...
    def TermName(self) -> 'Names.TermNameExtractor': ...
    def TypeName(self) -> 'Names.TypeNameExtractor': ...
    def newTermName(self, s: typing.Union[java.lang.String, str]) -> 'Names.TermNameApi': ...
    def newTypeName(self, s: typing.Union[java.lang.String, str]) -> 'Names.TypeNameApi': ...
    def stringToTermName(self, s: typing.Union[java.lang.String, str]) -> 'Names.TermNameApi': ...
    def stringToTypeName(self, s: typing.Union[java.lang.String, str]) -> 'Names.TypeNameApi': ...
    class NameApi:
        $outer: 'Names' = ...
        def __init__(self, $outer: 'Names'): ...
        def decoded(self) -> java.lang.String: ...
        def decodedName(self) -> 'Names.NameApi': ...
        def encoded(self) -> java.lang.String: ...
        def encodedName(self) -> 'Names.NameApi': ...
        def isTermName(self) -> bool: ...
        def isTypeName(self) -> bool: ...
        def toTermName(self) -> 'Names.TermNameApi': ...
        def toTypeName(self) -> 'Names.TypeNameApi': ...
    class TermNameApi: ...
    class TermNameExtractor:
        $outer: 'Names' = ...
        def __init__(self, $outer: 'Names'): ...
        def apply(self, s: typing.Union[java.lang.String, str]) -> 'Names.TermNameApi': ...
        def unapply(self, name: 'Names.TermNameApi') -> scala.Option[java.lang.String]: ...
    class TypeNameApi: ...
    class TypeNameExtractor:
        $outer: 'Names' = ...
        def __init__(self, $outer: 'Names'): ...
        def apply(self, s: typing.Union[java.lang.String, str]) -> 'Names.TypeNameApi': ...
        def unapply(self, name: 'Names.TypeNameApi') -> scala.Option[java.lang.String]: ...

class Position:
    def column(self) -> int: ...
    def end(self) -> int: ...
    def endOrPoint(self) -> int: ...
    def focus(self) -> 'Position': ...
    def focusEnd(self) -> 'Position': ...
    def focusStart(self) -> 'Position': ...
    def includes(self, pos: 'Position') -> bool: ...
    def isDefined(self) -> bool: ...
    def isOpaqueRange(self) -> bool: ...
    def isRange(self) -> bool: ...
    def isTransparent(self) -> bool: ...
    def line(self) -> int: ...
    def lineContent(self) -> java.lang.String: ...
    def makeTransparent(self) -> 'Position': ...
    def overlaps(self, pos: 'Position') -> bool: ...
    def point(self) -> int: ...
    def pointOrElse(self, default: int) -> int: ...
    def precedes(self, pos: 'Position') -> bool: ...
    def properlyIncludes(self, pos: 'Position') -> bool: ...
    def properlyPrecedes(self, pos: 'Position') -> bool: ...
    def sameRange(self, pos: 'Position') -> bool: ...
    def show(self) -> java.lang.String: ...
    def source(self) -> scala.reflect.internal.util.SourceFile: ...
    def start(self) -> int: ...
    def startOrPoint(self) -> int: ...
    def toSingleLine(self) -> 'Position': ...
    def union(self, pos: 'Position') -> 'Position': ...
    def withEnd(self, off: int) -> 'Position': ...
    def withPoint(self, off: int) -> 'Position': ...
    def withStart(self, off: int) -> 'Position': ...

class Positions:
    def NoPosition(self) -> Position: ...
    _atPos__T = typing.TypeVar('_atPos__T', bound='Trees.TreeApi')  # <T>
    def atPos(self, pos: Position, tree: _atPos__T) -> _atPos__T: ...
    @typing.overload
    def wrappingPos(self, trees: scala.collection.immutable.List['Trees.TreeApi']) -> Position: ...
    @typing.overload
    def wrappingPos(self, default: Position, trees: scala.collection.immutable.List['Trees.TreeApi']) -> Position: ...

class Printers:
    @staticmethod
    def $init$($this: 'Printers') -> None: ...
    def newCodePrinter(self, out: java.io.PrintWriter, tree: 'Trees.TreeApi', printRootPkg: bool) -> 'Printers.TreePrinter': ...
    def newRawTreePrinter(self, out: java.io.PrintWriter) -> 'Printers.TreePrinter': ...
    def newTreePrinter(self, out: java.io.PrintWriter) -> 'Printers.TreePrinter': ...
    def render(self, what: typing.Any, mkPrinter: scala.Function1[java.io.PrintWriter, 'Printers.TreePrinter'], printTypes: 'Printers.BooleanFlag', printIds: 'Printers.BooleanFlag', printOwners: 'Printers.BooleanFlag', printKinds: 'Printers.BooleanFlag', printMirrors: 'Printers.BooleanFlag', printPositions: 'Printers.BooleanFlag') -> java.lang.String: ...
    def render$default$3(self) -> 'Printers.BooleanFlag': ...
    def render$default$4(self) -> 'Printers.BooleanFlag': ...
    def render$default$5(self) -> 'Printers.BooleanFlag': ...
    def render$default$6(self) -> 'Printers.BooleanFlag': ...
    def render$default$7(self) -> 'Printers.BooleanFlag': ...
    def render$default$8(self) -> 'Printers.BooleanFlag': ...
    @typing.overload
    def show(self, flags: typing.Any) -> java.lang.String: ...
    @typing.overload
    def show(self, name: Names.NameApi) -> java.lang.String: ...
    @typing.overload
    def show(self, position: Position) -> java.lang.String: ...
    @typing.overload
    def show(self, any: typing.Any, printTypes: 'Printers.BooleanFlag', printIds: 'Printers.BooleanFlag', printOwners: 'Printers.BooleanFlag', printKinds: 'Printers.BooleanFlag', printMirrors: 'Printers.BooleanFlag', printPositions: 'Printers.BooleanFlag') -> java.lang.String: ...
    def show$default$2(self) -> 'Printers.BooleanFlag': ...
    def show$default$3(self) -> 'Printers.BooleanFlag': ...
    def show$default$4(self) -> 'Printers.BooleanFlag': ...
    def show$default$5(self) -> 'Printers.BooleanFlag': ...
    def show$default$6(self) -> 'Printers.BooleanFlag': ...
    def show$default$7(self) -> 'Printers.BooleanFlag': ...
    def showCode(self, tree: 'Trees.TreeApi', printTypes: 'Printers.BooleanFlag', printIds: 'Printers.BooleanFlag', printOwners: 'Printers.BooleanFlag', printPositions: 'Printers.BooleanFlag', printRootPkg: bool) -> java.lang.String: ...
    def showCode$default$2(self) -> 'Printers.BooleanFlag': ...
    def showCode$default$3(self) -> 'Printers.BooleanFlag': ...
    def showCode$default$4(self) -> 'Printers.BooleanFlag': ...
    def showCode$default$5(self) -> 'Printers.BooleanFlag': ...
    def showCode$default$6(self) -> bool: ...
    def showDecl(self, sym: 'Symbols.SymbolApi') -> java.lang.String: ...
    @typing.overload
    def showRaw(self, flags: typing.Any) -> java.lang.String: ...
    @typing.overload
    def showRaw(self, any: typing.Any, printTypes: 'Printers.BooleanFlag', printIds: 'Printers.BooleanFlag', printOwners: 'Printers.BooleanFlag', printKinds: 'Printers.BooleanFlag', printMirrors: 'Printers.BooleanFlag', printPositions: 'Printers.BooleanFlag') -> java.lang.String: ...
    @typing.overload
    def showRaw(self, name: Names.NameApi) -> java.lang.String: ...
    @typing.overload
    def showRaw(self, position: Position) -> java.lang.String: ...
    def showRaw$default$2(self) -> 'Printers.BooleanFlag': ...
    def showRaw$default$3(self) -> 'Printers.BooleanFlag': ...
    def showRaw$default$4(self) -> 'Printers.BooleanFlag': ...
    def showRaw$default$5(self) -> 'Printers.BooleanFlag': ...
    def showRaw$default$6(self) -> 'Printers.BooleanFlag': ...
    def showRaw$default$7(self) -> 'Printers.BooleanFlag': ...
    def treeToString(self, tree: 'Trees.TreeApi') -> java.lang.String: ...
    class BooleanFlag(scala.Product, scala.Serializable):
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe', value: scala.Option[typing.Any]): ...
        def canEqual(self, x$1: typing.Any) -> bool: ...
        def copy(self, value: scala.Option[typing.Any]) -> 'Printers.BooleanFlag': ...
        def copy$default$1(self) -> scala.Option[typing.Any]: ...
        def equals(self, x$1: typing.Any) -> bool: ...
        def hashCode(self) -> int: ...
        def productArity(self) -> int: ...
        def productElement(self, x$1: int) -> typing.Any: ...
        def productIterator(self) -> scala.collection.Iterator[typing.Any]: ...
        def productPrefix(self) -> java.lang.String: ...
        def toString(self) -> java.lang.String: ...
        def value(self) -> scala.Option[typing.Any]: ...
    class BooleanFlag$(scala.Serializable):
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, value: scala.Option[typing.Any]) -> 'Printers.BooleanFlag': ...
        def booleanToBooleanFlag(self, value: bool) -> 'Printers.BooleanFlag': ...
        def optionToBooleanFlag(self, value: scala.Option[typing.Any]) -> 'Printers.BooleanFlag': ...
        def settingToBooleanFlag(self, setting: scala.reflect.internal.settings.MutableSettings.SettingValue) -> 'Printers.BooleanFlag': ...
        def unapply(self, x$0: 'Printers.BooleanFlag') -> scala.Option[scala.Option[typing.Any]]: ...
    class TreePrinter:
        @staticmethod
        def $init$($this: 'Printers.TreePrinter') -> None: ...
        def printIds(self) -> bool: ...
        def printIds_$eq(self, x$1: bool) -> None: ...
        def printKinds(self) -> bool: ...
        def printKinds_$eq(self, x$1: bool) -> None: ...
        def printMirrors(self) -> bool: ...
        def printMirrors_$eq(self, x$1: bool) -> None: ...
        def printOwners(self) -> bool: ...
        def printOwners_$eq(self, x$1: bool) -> None: ...
        def printPositions(self) -> bool: ...
        def printPositions_$eq(self, x$1: bool) -> None: ...
        def printTypes(self) -> bool: ...
        def printTypes_$eq(self, x$1: bool) -> None: ...
        def withIds(self) -> 'Printers.TreePrinter': ...
        def withKinds(self) -> 'Printers.TreePrinter': ...
        def withMirrors(self) -> 'Printers.TreePrinter': ...
        def withOwners(self) -> 'Printers.TreePrinter': ...
        def withPositions(self) -> 'Printers.TreePrinter': ...
        def withTypes(self) -> 'Printers.TreePrinter': ...
        def withoutIds(self) -> 'Printers.TreePrinter': ...
        def withoutKinds(self) -> 'Printers.TreePrinter': ...
        def withoutMirrors(self) -> 'Printers.TreePrinter': ...
        def withoutOwners(self) -> 'Printers.TreePrinter': ...
        def withoutPositions(self) -> 'Printers.TreePrinter': ...
        def withoutTypes(self) -> 'Printers.TreePrinter': ...

class SerializedExpr(scala.Serializable):
    serialVersionUID: typing.ClassVar[int] = ...
    def __init__(self, treec: 'TreeCreator', tag: 'TypeTags.WeakTypeTag'[typing.Any]): ...
    def tag(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
    def tag_$eq(self, x$1: 'TypeTags.WeakTypeTag'[typing.Any]) -> None: ...
    def treec(self) -> 'TreeCreator': ...
    def treec_$eq(self, x$1: 'TreeCreator') -> None: ...

class SerializedTypeTag(scala.Serializable):
    serialVersionUID: typing.ClassVar[int] = ...
    def __init__(self, tpec: 'TypeCreator', concrete: bool): ...
    def concrete(self) -> bool: ...
    def concrete_$eq(self, x$1: bool) -> None: ...
    def tpec(self) -> 'TypeCreator': ...
    def tpec_$eq(self, x$1: 'TypeCreator') -> None: ...

class StandardLiftables:
    @staticmethod
    def $init$($this: 'StandardLiftables') -> None: ...
    def scala$reflect$api$StandardLiftables$$stdnme(self) -> 'StandardLiftables.stdnme.': ...
    class StandardLiftableInstances:
        @staticmethod
        def $init$($this: 'StandardLiftables.StandardLiftableInstances') -> None: ...
        _liftArray__T = typing.TypeVar('_liftArray__T')  # <T>
        def liftArray(self, evidence$2: 'Liftables.Liftable'[_liftArray__T]) -> 'Liftables.Liftable'[typing.Any]: ...
        _liftBoolean__T = typing.TypeVar('_liftBoolean__T')  # <T>
        def liftBoolean(self) -> 'Liftables.Liftable'[_liftBoolean__T]: ...
        _liftByte__T = typing.TypeVar('_liftByte__T')  # <T>
        def liftByte(self) -> 'Liftables.Liftable'[_liftByte__T]: ...
        _liftChar__T = typing.TypeVar('_liftChar__T')  # <T>
        def liftChar(self) -> 'Liftables.Liftable'[_liftChar__T]: ...
        _liftConstant__T = typing.TypeVar('_liftConstant__T', bound=Constants.ConstantApi)  # <T>
        def liftConstant(self) -> 'Liftables.Liftable'[_liftConstant__T]: ...
        _liftDouble__T = typing.TypeVar('_liftDouble__T')  # <T>
        def liftDouble(self) -> 'Liftables.Liftable'[_liftDouble__T]: ...
        _liftEither__L = typing.TypeVar('_liftEither__L')  # <L>
        _liftEither__R = typing.TypeVar('_liftEither__R')  # <R>
        def liftEither(self, evidence$12: 'Liftables.Liftable'[_liftEither__L], evidence$13: 'Liftables.Liftable'[_liftEither__R]) -> 'Liftables.Liftable'[scala.util.Either[_liftEither__L, _liftEither__R]]: ...
        _liftExpr__T = typing.TypeVar('_liftExpr__T', bound='Exprs.Expr')  # <T>
        def liftExpr(self) -> 'Liftables.Liftable'[_liftExpr__T]: ...
        _liftFloat__T = typing.TypeVar('_liftFloat__T')  # <T>
        def liftFloat(self) -> 'Liftables.Liftable'[_liftFloat__T]: ...
        _liftInt__T = typing.TypeVar('_liftInt__T')  # <T>
        def liftInt(self) -> 'Liftables.Liftable'[_liftInt__T]: ...
        _liftLeft__L = typing.TypeVar('_liftLeft__L')  # <L>
        _liftLeft__R = typing.TypeVar('_liftLeft__R')  # <R>
        def liftLeft(self, evidence$10: 'Liftables.Liftable'[_liftLeft__L]) -> 'Liftables.Liftable'[scala.util.Left[_liftLeft__L, _liftLeft__R]]: ...
        _liftList__T = typing.TypeVar('_liftList__T')  # <T>
        def liftList(self, evidence$4: 'Liftables.Liftable'[_liftList__T]) -> 'Liftables.Liftable'[scala.collection.immutable.List[_liftList__T]]: ...
        _liftLong__T = typing.TypeVar('_liftLong__T')  # <T>
        def liftLong(self) -> 'Liftables.Liftable'[_liftLong__T]: ...
        _liftMap__K = typing.TypeVar('_liftMap__K')  # <K>
        _liftMap__V = typing.TypeVar('_liftMap__V')  # <V>
        def liftMap(self, evidence$5: 'Liftables.Liftable'[_liftMap__K], evidence$6: 'Liftables.Liftable'[_liftMap__V]) -> 'Liftables.Liftable'[scala.collection.immutable.Map[_liftMap__K, _liftMap__V]]: ...
        _liftName__T = typing.TypeVar('_liftName__T', bound=Names.NameApi)  # <T>
        def liftName(self) -> 'Liftables.Liftable'[_liftName__T]: ...
        def liftNil(self) -> 'Liftables.Liftable'[scala.collection.immutable.Nil.]: ...
        def liftNone(self) -> 'Liftables.Liftable'[scala.None.]: ...
        _liftOption__T = typing.TypeVar('_liftOption__T')  # <T>
        def liftOption(self, evidence$9: 'Liftables.Liftable'[_liftOption__T]) -> 'Liftables.Liftable'[scala.Option[_liftOption__T]]: ...
        _liftRight__L = typing.TypeVar('_liftRight__L')  # <L>
        _liftRight__R = typing.TypeVar('_liftRight__R')  # <R>
        def liftRight(self, evidence$11: 'Liftables.Liftable'[_liftRight__R]) -> 'Liftables.Liftable'[scala.util.Right[_liftRight__L, _liftRight__R]]: ...
        def liftScalaSymbol(self) -> 'Liftables.Liftable'[scala.Symbol]: ...
        _liftSet__T = typing.TypeVar('_liftSet__T')  # <T>
        def liftSet(self, evidence$7: 'Liftables.Liftable'[_liftSet__T]) -> 'Liftables.Liftable'[scala.collection.immutable.Set[_liftSet__T]]: ...
        _liftShort__T = typing.TypeVar('_liftShort__T')  # <T>
        def liftShort(self) -> 'Liftables.Liftable'[_liftShort__T]: ...
        _liftSome__T = typing.TypeVar('_liftSome__T')  # <T>
        def liftSome(self, evidence$8: 'Liftables.Liftable'[_liftSome__T]) -> 'Liftables.Liftable'[scala.Some[_liftSome__T]]: ...
        _liftString__T = typing.TypeVar('_liftString__T', bound=java.lang.String)  # <T>
        def liftString(self) -> 'Liftables.Liftable'[_liftString__T]: ...
        _liftTree__T = typing.TypeVar('_liftTree__T', bound='Trees.TreeApi')  # <T>
        def liftTree(self) -> 'Liftables.Liftable'[_liftTree__T]: ...
        _liftTuple10__T1 = typing.TypeVar('_liftTuple10__T1')  # <T1>
        _liftTuple10__T2 = typing.TypeVar('_liftTuple10__T2')  # <T2>
        _liftTuple10__T3 = typing.TypeVar('_liftTuple10__T3')  # <T3>
        _liftTuple10__T4 = typing.TypeVar('_liftTuple10__T4')  # <T4>
        _liftTuple10__T5 = typing.TypeVar('_liftTuple10__T5')  # <T5>
        _liftTuple10__T6 = typing.TypeVar('_liftTuple10__T6')  # <T6>
        _liftTuple10__T7 = typing.TypeVar('_liftTuple10__T7')  # <T7>
        _liftTuple10__T8 = typing.TypeVar('_liftTuple10__T8')  # <T8>
        _liftTuple10__T9 = typing.TypeVar('_liftTuple10__T9')  # <T9>
        _liftTuple10__T10 = typing.TypeVar('_liftTuple10__T10')  # <T10>
        def liftTuple10(self, liftT1: 'Liftables.Liftable'[_liftTuple10__T1], liftT2: 'Liftables.Liftable'[_liftTuple10__T2], liftT3: 'Liftables.Liftable'[_liftTuple10__T3], liftT4: 'Liftables.Liftable'[_liftTuple10__T4], liftT5: 'Liftables.Liftable'[_liftTuple10__T5], liftT6: 'Liftables.Liftable'[_liftTuple10__T6], liftT7: 'Liftables.Liftable'[_liftTuple10__T7], liftT8: 'Liftables.Liftable'[_liftTuple10__T8], liftT9: 'Liftables.Liftable'[_liftTuple10__T9], liftT10: 'Liftables.Liftable'[_liftTuple10__T10]) -> 'Liftables.Liftable'[scala.Tuple10[_liftTuple10__T1, _liftTuple10__T2, _liftTuple10__T3, _liftTuple10__T4, _liftTuple10__T5, _liftTuple10__T6, _liftTuple10__T7, _liftTuple10__T8, _liftTuple10__T9, _liftTuple10__T10]]: ...
        _liftTuple11__T1 = typing.TypeVar('_liftTuple11__T1')  # <T1>
        _liftTuple11__T2 = typing.TypeVar('_liftTuple11__T2')  # <T2>
        _liftTuple11__T3 = typing.TypeVar('_liftTuple11__T3')  # <T3>
        _liftTuple11__T4 = typing.TypeVar('_liftTuple11__T4')  # <T4>
        _liftTuple11__T5 = typing.TypeVar('_liftTuple11__T5')  # <T5>
        _liftTuple11__T6 = typing.TypeVar('_liftTuple11__T6')  # <T6>
        _liftTuple11__T7 = typing.TypeVar('_liftTuple11__T7')  # <T7>
        _liftTuple11__T8 = typing.TypeVar('_liftTuple11__T8')  # <T8>
        _liftTuple11__T9 = typing.TypeVar('_liftTuple11__T9')  # <T9>
        _liftTuple11__T10 = typing.TypeVar('_liftTuple11__T10')  # <T10>
        _liftTuple11__T11 = typing.TypeVar('_liftTuple11__T11')  # <T11>
        def liftTuple11(self, liftT1: 'Liftables.Liftable'[_liftTuple11__T1], liftT2: 'Liftables.Liftable'[_liftTuple11__T2], liftT3: 'Liftables.Liftable'[_liftTuple11__T3], liftT4: 'Liftables.Liftable'[_liftTuple11__T4], liftT5: 'Liftables.Liftable'[_liftTuple11__T5], liftT6: 'Liftables.Liftable'[_liftTuple11__T6], liftT7: 'Liftables.Liftable'[_liftTuple11__T7], liftT8: 'Liftables.Liftable'[_liftTuple11__T8], liftT9: 'Liftables.Liftable'[_liftTuple11__T9], liftT10: 'Liftables.Liftable'[_liftTuple11__T10], liftT11: 'Liftables.Liftable'[_liftTuple11__T11]) -> 'Liftables.Liftable'[scala.Tuple11[_liftTuple11__T1, _liftTuple11__T2, _liftTuple11__T3, _liftTuple11__T4, _liftTuple11__T5, _liftTuple11__T6, _liftTuple11__T7, _liftTuple11__T8, _liftTuple11__T9, _liftTuple11__T10, _liftTuple11__T11]]: ...
        _liftTuple12__T1 = typing.TypeVar('_liftTuple12__T1')  # <T1>
        _liftTuple12__T2 = typing.TypeVar('_liftTuple12__T2')  # <T2>
        _liftTuple12__T3 = typing.TypeVar('_liftTuple12__T3')  # <T3>
        _liftTuple12__T4 = typing.TypeVar('_liftTuple12__T4')  # <T4>
        _liftTuple12__T5 = typing.TypeVar('_liftTuple12__T5')  # <T5>
        _liftTuple12__T6 = typing.TypeVar('_liftTuple12__T6')  # <T6>
        _liftTuple12__T7 = typing.TypeVar('_liftTuple12__T7')  # <T7>
        _liftTuple12__T8 = typing.TypeVar('_liftTuple12__T8')  # <T8>
        _liftTuple12__T9 = typing.TypeVar('_liftTuple12__T9')  # <T9>
        _liftTuple12__T10 = typing.TypeVar('_liftTuple12__T10')  # <T10>
        _liftTuple12__T11 = typing.TypeVar('_liftTuple12__T11')  # <T11>
        _liftTuple12__T12 = typing.TypeVar('_liftTuple12__T12')  # <T12>
        def liftTuple12(self, liftT1: 'Liftables.Liftable'[_liftTuple12__T1], liftT2: 'Liftables.Liftable'[_liftTuple12__T2], liftT3: 'Liftables.Liftable'[_liftTuple12__T3], liftT4: 'Liftables.Liftable'[_liftTuple12__T4], liftT5: 'Liftables.Liftable'[_liftTuple12__T5], liftT6: 'Liftables.Liftable'[_liftTuple12__T6], liftT7: 'Liftables.Liftable'[_liftTuple12__T7], liftT8: 'Liftables.Liftable'[_liftTuple12__T8], liftT9: 'Liftables.Liftable'[_liftTuple12__T9], liftT10: 'Liftables.Liftable'[_liftTuple12__T10], liftT11: 'Liftables.Liftable'[_liftTuple12__T11], liftT12: 'Liftables.Liftable'[_liftTuple12__T12]) -> 'Liftables.Liftable'[scala.Tuple12[_liftTuple12__T1, _liftTuple12__T2, _liftTuple12__T3, _liftTuple12__T4, _liftTuple12__T5, _liftTuple12__T6, _liftTuple12__T7, _liftTuple12__T8, _liftTuple12__T9, _liftTuple12__T10, _liftTuple12__T11, _liftTuple12__T12]]: ...
        _liftTuple13__T1 = typing.TypeVar('_liftTuple13__T1')  # <T1>
        _liftTuple13__T2 = typing.TypeVar('_liftTuple13__T2')  # <T2>
        _liftTuple13__T3 = typing.TypeVar('_liftTuple13__T3')  # <T3>
        _liftTuple13__T4 = typing.TypeVar('_liftTuple13__T4')  # <T4>
        _liftTuple13__T5 = typing.TypeVar('_liftTuple13__T5')  # <T5>
        _liftTuple13__T6 = typing.TypeVar('_liftTuple13__T6')  # <T6>
        _liftTuple13__T7 = typing.TypeVar('_liftTuple13__T7')  # <T7>
        _liftTuple13__T8 = typing.TypeVar('_liftTuple13__T8')  # <T8>
        _liftTuple13__T9 = typing.TypeVar('_liftTuple13__T9')  # <T9>
        _liftTuple13__T10 = typing.TypeVar('_liftTuple13__T10')  # <T10>
        _liftTuple13__T11 = typing.TypeVar('_liftTuple13__T11')  # <T11>
        _liftTuple13__T12 = typing.TypeVar('_liftTuple13__T12')  # <T12>
        _liftTuple13__T13 = typing.TypeVar('_liftTuple13__T13')  # <T13>
        def liftTuple13(self, liftT1: 'Liftables.Liftable'[_liftTuple13__T1], liftT2: 'Liftables.Liftable'[_liftTuple13__T2], liftT3: 'Liftables.Liftable'[_liftTuple13__T3], liftT4: 'Liftables.Liftable'[_liftTuple13__T4], liftT5: 'Liftables.Liftable'[_liftTuple13__T5], liftT6: 'Liftables.Liftable'[_liftTuple13__T6], liftT7: 'Liftables.Liftable'[_liftTuple13__T7], liftT8: 'Liftables.Liftable'[_liftTuple13__T8], liftT9: 'Liftables.Liftable'[_liftTuple13__T9], liftT10: 'Liftables.Liftable'[_liftTuple13__T10], liftT11: 'Liftables.Liftable'[_liftTuple13__T11], liftT12: 'Liftables.Liftable'[_liftTuple13__T12], liftT13: 'Liftables.Liftable'[_liftTuple13__T13]) -> 'Liftables.Liftable'[scala.Tuple13[_liftTuple13__T1, _liftTuple13__T2, _liftTuple13__T3, _liftTuple13__T4, _liftTuple13__T5, _liftTuple13__T6, _liftTuple13__T7, _liftTuple13__T8, _liftTuple13__T9, _liftTuple13__T10, _liftTuple13__T11, _liftTuple13__T12, _liftTuple13__T13]]: ...
        _liftTuple14__T1 = typing.TypeVar('_liftTuple14__T1')  # <T1>
        _liftTuple14__T2 = typing.TypeVar('_liftTuple14__T2')  # <T2>
        _liftTuple14__T3 = typing.TypeVar('_liftTuple14__T3')  # <T3>
        _liftTuple14__T4 = typing.TypeVar('_liftTuple14__T4')  # <T4>
        _liftTuple14__T5 = typing.TypeVar('_liftTuple14__T5')  # <T5>
        _liftTuple14__T6 = typing.TypeVar('_liftTuple14__T6')  # <T6>
        _liftTuple14__T7 = typing.TypeVar('_liftTuple14__T7')  # <T7>
        _liftTuple14__T8 = typing.TypeVar('_liftTuple14__T8')  # <T8>
        _liftTuple14__T9 = typing.TypeVar('_liftTuple14__T9')  # <T9>
        _liftTuple14__T10 = typing.TypeVar('_liftTuple14__T10')  # <T10>
        _liftTuple14__T11 = typing.TypeVar('_liftTuple14__T11')  # <T11>
        _liftTuple14__T12 = typing.TypeVar('_liftTuple14__T12')  # <T12>
        _liftTuple14__T13 = typing.TypeVar('_liftTuple14__T13')  # <T13>
        _liftTuple14__T14 = typing.TypeVar('_liftTuple14__T14')  # <T14>
        def liftTuple14(self, liftT1: 'Liftables.Liftable'[_liftTuple14__T1], liftT2: 'Liftables.Liftable'[_liftTuple14__T2], liftT3: 'Liftables.Liftable'[_liftTuple14__T3], liftT4: 'Liftables.Liftable'[_liftTuple14__T4], liftT5: 'Liftables.Liftable'[_liftTuple14__T5], liftT6: 'Liftables.Liftable'[_liftTuple14__T6], liftT7: 'Liftables.Liftable'[_liftTuple14__T7], liftT8: 'Liftables.Liftable'[_liftTuple14__T8], liftT9: 'Liftables.Liftable'[_liftTuple14__T9], liftT10: 'Liftables.Liftable'[_liftTuple14__T10], liftT11: 'Liftables.Liftable'[_liftTuple14__T11], liftT12: 'Liftables.Liftable'[_liftTuple14__T12], liftT13: 'Liftables.Liftable'[_liftTuple14__T13], liftT14: 'Liftables.Liftable'[_liftTuple14__T14]) -> 'Liftables.Liftable'[scala.Tuple14[_liftTuple14__T1, _liftTuple14__T2, _liftTuple14__T3, _liftTuple14__T4, _liftTuple14__T5, _liftTuple14__T6, _liftTuple14__T7, _liftTuple14__T8, _liftTuple14__T9, _liftTuple14__T10, _liftTuple14__T11, _liftTuple14__T12, _liftTuple14__T13, _liftTuple14__T14]]: ...
        _liftTuple15__T1 = typing.TypeVar('_liftTuple15__T1')  # <T1>
        _liftTuple15__T2 = typing.TypeVar('_liftTuple15__T2')  # <T2>
        _liftTuple15__T3 = typing.TypeVar('_liftTuple15__T3')  # <T3>
        _liftTuple15__T4 = typing.TypeVar('_liftTuple15__T4')  # <T4>
        _liftTuple15__T5 = typing.TypeVar('_liftTuple15__T5')  # <T5>
        _liftTuple15__T6 = typing.TypeVar('_liftTuple15__T6')  # <T6>
        _liftTuple15__T7 = typing.TypeVar('_liftTuple15__T7')  # <T7>
        _liftTuple15__T8 = typing.TypeVar('_liftTuple15__T8')  # <T8>
        _liftTuple15__T9 = typing.TypeVar('_liftTuple15__T9')  # <T9>
        _liftTuple15__T10 = typing.TypeVar('_liftTuple15__T10')  # <T10>
        _liftTuple15__T11 = typing.TypeVar('_liftTuple15__T11')  # <T11>
        _liftTuple15__T12 = typing.TypeVar('_liftTuple15__T12')  # <T12>
        _liftTuple15__T13 = typing.TypeVar('_liftTuple15__T13')  # <T13>
        _liftTuple15__T14 = typing.TypeVar('_liftTuple15__T14')  # <T14>
        _liftTuple15__T15 = typing.TypeVar('_liftTuple15__T15')  # <T15>
        def liftTuple15(self, liftT1: 'Liftables.Liftable'[_liftTuple15__T1], liftT2: 'Liftables.Liftable'[_liftTuple15__T2], liftT3: 'Liftables.Liftable'[_liftTuple15__T3], liftT4: 'Liftables.Liftable'[_liftTuple15__T4], liftT5: 'Liftables.Liftable'[_liftTuple15__T5], liftT6: 'Liftables.Liftable'[_liftTuple15__T6], liftT7: 'Liftables.Liftable'[_liftTuple15__T7], liftT8: 'Liftables.Liftable'[_liftTuple15__T8], liftT9: 'Liftables.Liftable'[_liftTuple15__T9], liftT10: 'Liftables.Liftable'[_liftTuple15__T10], liftT11: 'Liftables.Liftable'[_liftTuple15__T11], liftT12: 'Liftables.Liftable'[_liftTuple15__T12], liftT13: 'Liftables.Liftable'[_liftTuple15__T13], liftT14: 'Liftables.Liftable'[_liftTuple15__T14], liftT15: 'Liftables.Liftable'[_liftTuple15__T15]) -> 'Liftables.Liftable'[scala.Tuple15[_liftTuple15__T1, _liftTuple15__T2, _liftTuple15__T3, _liftTuple15__T4, _liftTuple15__T5, _liftTuple15__T6, _liftTuple15__T7, _liftTuple15__T8, _liftTuple15__T9, _liftTuple15__T10, _liftTuple15__T11, _liftTuple15__T12, _liftTuple15__T13, _liftTuple15__T14, _liftTuple15__T15]]: ...
        _liftTuple16__T1 = typing.TypeVar('_liftTuple16__T1')  # <T1>
        _liftTuple16__T2 = typing.TypeVar('_liftTuple16__T2')  # <T2>
        _liftTuple16__T3 = typing.TypeVar('_liftTuple16__T3')  # <T3>
        _liftTuple16__T4 = typing.TypeVar('_liftTuple16__T4')  # <T4>
        _liftTuple16__T5 = typing.TypeVar('_liftTuple16__T5')  # <T5>
        _liftTuple16__T6 = typing.TypeVar('_liftTuple16__T6')  # <T6>
        _liftTuple16__T7 = typing.TypeVar('_liftTuple16__T7')  # <T7>
        _liftTuple16__T8 = typing.TypeVar('_liftTuple16__T8')  # <T8>
        _liftTuple16__T9 = typing.TypeVar('_liftTuple16__T9')  # <T9>
        _liftTuple16__T10 = typing.TypeVar('_liftTuple16__T10')  # <T10>
        _liftTuple16__T11 = typing.TypeVar('_liftTuple16__T11')  # <T11>
        _liftTuple16__T12 = typing.TypeVar('_liftTuple16__T12')  # <T12>
        _liftTuple16__T13 = typing.TypeVar('_liftTuple16__T13')  # <T13>
        _liftTuple16__T14 = typing.TypeVar('_liftTuple16__T14')  # <T14>
        _liftTuple16__T15 = typing.TypeVar('_liftTuple16__T15')  # <T15>
        _liftTuple16__T16 = typing.TypeVar('_liftTuple16__T16')  # <T16>
        def liftTuple16(self, liftT1: 'Liftables.Liftable'[_liftTuple16__T1], liftT2: 'Liftables.Liftable'[_liftTuple16__T2], liftT3: 'Liftables.Liftable'[_liftTuple16__T3], liftT4: 'Liftables.Liftable'[_liftTuple16__T4], liftT5: 'Liftables.Liftable'[_liftTuple16__T5], liftT6: 'Liftables.Liftable'[_liftTuple16__T6], liftT7: 'Liftables.Liftable'[_liftTuple16__T7], liftT8: 'Liftables.Liftable'[_liftTuple16__T8], liftT9: 'Liftables.Liftable'[_liftTuple16__T9], liftT10: 'Liftables.Liftable'[_liftTuple16__T10], liftT11: 'Liftables.Liftable'[_liftTuple16__T11], liftT12: 'Liftables.Liftable'[_liftTuple16__T12], liftT13: 'Liftables.Liftable'[_liftTuple16__T13], liftT14: 'Liftables.Liftable'[_liftTuple16__T14], liftT15: 'Liftables.Liftable'[_liftTuple16__T15], liftT16: 'Liftables.Liftable'[_liftTuple16__T16]) -> 'Liftables.Liftable'[scala.Tuple16[_liftTuple16__T1, _liftTuple16__T2, _liftTuple16__T3, _liftTuple16__T4, _liftTuple16__T5, _liftTuple16__T6, _liftTuple16__T7, _liftTuple16__T8, _liftTuple16__T9, _liftTuple16__T10, _liftTuple16__T11, _liftTuple16__T12, _liftTuple16__T13, _liftTuple16__T14, _liftTuple16__T15, _liftTuple16__T16]]: ...
        _liftTuple17__T1 = typing.TypeVar('_liftTuple17__T1')  # <T1>
        _liftTuple17__T2 = typing.TypeVar('_liftTuple17__T2')  # <T2>
        _liftTuple17__T3 = typing.TypeVar('_liftTuple17__T3')  # <T3>
        _liftTuple17__T4 = typing.TypeVar('_liftTuple17__T4')  # <T4>
        _liftTuple17__T5 = typing.TypeVar('_liftTuple17__T5')  # <T5>
        _liftTuple17__T6 = typing.TypeVar('_liftTuple17__T6')  # <T6>
        _liftTuple17__T7 = typing.TypeVar('_liftTuple17__T7')  # <T7>
        _liftTuple17__T8 = typing.TypeVar('_liftTuple17__T8')  # <T8>
        _liftTuple17__T9 = typing.TypeVar('_liftTuple17__T9')  # <T9>
        _liftTuple17__T10 = typing.TypeVar('_liftTuple17__T10')  # <T10>
        _liftTuple17__T11 = typing.TypeVar('_liftTuple17__T11')  # <T11>
        _liftTuple17__T12 = typing.TypeVar('_liftTuple17__T12')  # <T12>
        _liftTuple17__T13 = typing.TypeVar('_liftTuple17__T13')  # <T13>
        _liftTuple17__T14 = typing.TypeVar('_liftTuple17__T14')  # <T14>
        _liftTuple17__T15 = typing.TypeVar('_liftTuple17__T15')  # <T15>
        _liftTuple17__T16 = typing.TypeVar('_liftTuple17__T16')  # <T16>
        _liftTuple17__T17 = typing.TypeVar('_liftTuple17__T17')  # <T17>
        def liftTuple17(self, liftT1: 'Liftables.Liftable'[_liftTuple17__T1], liftT2: 'Liftables.Liftable'[_liftTuple17__T2], liftT3: 'Liftables.Liftable'[_liftTuple17__T3], liftT4: 'Liftables.Liftable'[_liftTuple17__T4], liftT5: 'Liftables.Liftable'[_liftTuple17__T5], liftT6: 'Liftables.Liftable'[_liftTuple17__T6], liftT7: 'Liftables.Liftable'[_liftTuple17__T7], liftT8: 'Liftables.Liftable'[_liftTuple17__T8], liftT9: 'Liftables.Liftable'[_liftTuple17__T9], liftT10: 'Liftables.Liftable'[_liftTuple17__T10], liftT11: 'Liftables.Liftable'[_liftTuple17__T11], liftT12: 'Liftables.Liftable'[_liftTuple17__T12], liftT13: 'Liftables.Liftable'[_liftTuple17__T13], liftT14: 'Liftables.Liftable'[_liftTuple17__T14], liftT15: 'Liftables.Liftable'[_liftTuple17__T15], liftT16: 'Liftables.Liftable'[_liftTuple17__T16], liftT17: 'Liftables.Liftable'[_liftTuple17__T17]) -> 'Liftables.Liftable'[scala.Tuple17[_liftTuple17__T1, _liftTuple17__T2, _liftTuple17__T3, _liftTuple17__T4, _liftTuple17__T5, _liftTuple17__T6, _liftTuple17__T7, _liftTuple17__T8, _liftTuple17__T9, _liftTuple17__T10, _liftTuple17__T11, _liftTuple17__T12, _liftTuple17__T13, _liftTuple17__T14, _liftTuple17__T15, _liftTuple17__T16, _liftTuple17__T17]]: ...
        _liftTuple18__T1 = typing.TypeVar('_liftTuple18__T1')  # <T1>
        _liftTuple18__T2 = typing.TypeVar('_liftTuple18__T2')  # <T2>
        _liftTuple18__T3 = typing.TypeVar('_liftTuple18__T3')  # <T3>
        _liftTuple18__T4 = typing.TypeVar('_liftTuple18__T4')  # <T4>
        _liftTuple18__T5 = typing.TypeVar('_liftTuple18__T5')  # <T5>
        _liftTuple18__T6 = typing.TypeVar('_liftTuple18__T6')  # <T6>
        _liftTuple18__T7 = typing.TypeVar('_liftTuple18__T7')  # <T7>
        _liftTuple18__T8 = typing.TypeVar('_liftTuple18__T8')  # <T8>
        _liftTuple18__T9 = typing.TypeVar('_liftTuple18__T9')  # <T9>
        _liftTuple18__T10 = typing.TypeVar('_liftTuple18__T10')  # <T10>
        _liftTuple18__T11 = typing.TypeVar('_liftTuple18__T11')  # <T11>
        _liftTuple18__T12 = typing.TypeVar('_liftTuple18__T12')  # <T12>
        _liftTuple18__T13 = typing.TypeVar('_liftTuple18__T13')  # <T13>
        _liftTuple18__T14 = typing.TypeVar('_liftTuple18__T14')  # <T14>
        _liftTuple18__T15 = typing.TypeVar('_liftTuple18__T15')  # <T15>
        _liftTuple18__T16 = typing.TypeVar('_liftTuple18__T16')  # <T16>
        _liftTuple18__T17 = typing.TypeVar('_liftTuple18__T17')  # <T17>
        _liftTuple18__T18 = typing.TypeVar('_liftTuple18__T18')  # <T18>
        def liftTuple18(self, liftT1: 'Liftables.Liftable'[_liftTuple18__T1], liftT2: 'Liftables.Liftable'[_liftTuple18__T2], liftT3: 'Liftables.Liftable'[_liftTuple18__T3], liftT4: 'Liftables.Liftable'[_liftTuple18__T4], liftT5: 'Liftables.Liftable'[_liftTuple18__T5], liftT6: 'Liftables.Liftable'[_liftTuple18__T6], liftT7: 'Liftables.Liftable'[_liftTuple18__T7], liftT8: 'Liftables.Liftable'[_liftTuple18__T8], liftT9: 'Liftables.Liftable'[_liftTuple18__T9], liftT10: 'Liftables.Liftable'[_liftTuple18__T10], liftT11: 'Liftables.Liftable'[_liftTuple18__T11], liftT12: 'Liftables.Liftable'[_liftTuple18__T12], liftT13: 'Liftables.Liftable'[_liftTuple18__T13], liftT14: 'Liftables.Liftable'[_liftTuple18__T14], liftT15: 'Liftables.Liftable'[_liftTuple18__T15], liftT16: 'Liftables.Liftable'[_liftTuple18__T16], liftT17: 'Liftables.Liftable'[_liftTuple18__T17], liftT18: 'Liftables.Liftable'[_liftTuple18__T18]) -> 'Liftables.Liftable'[scala.Tuple18[_liftTuple18__T1, _liftTuple18__T2, _liftTuple18__T3, _liftTuple18__T4, _liftTuple18__T5, _liftTuple18__T6, _liftTuple18__T7, _liftTuple18__T8, _liftTuple18__T9, _liftTuple18__T10, _liftTuple18__T11, _liftTuple18__T12, _liftTuple18__T13, _liftTuple18__T14, _liftTuple18__T15, _liftTuple18__T16, _liftTuple18__T17, _liftTuple18__T18]]: ...
        _liftTuple19__T1 = typing.TypeVar('_liftTuple19__T1')  # <T1>
        _liftTuple19__T2 = typing.TypeVar('_liftTuple19__T2')  # <T2>
        _liftTuple19__T3 = typing.TypeVar('_liftTuple19__T3')  # <T3>
        _liftTuple19__T4 = typing.TypeVar('_liftTuple19__T4')  # <T4>
        _liftTuple19__T5 = typing.TypeVar('_liftTuple19__T5')  # <T5>
        _liftTuple19__T6 = typing.TypeVar('_liftTuple19__T6')  # <T6>
        _liftTuple19__T7 = typing.TypeVar('_liftTuple19__T7')  # <T7>
        _liftTuple19__T8 = typing.TypeVar('_liftTuple19__T8')  # <T8>
        _liftTuple19__T9 = typing.TypeVar('_liftTuple19__T9')  # <T9>
        _liftTuple19__T10 = typing.TypeVar('_liftTuple19__T10')  # <T10>
        _liftTuple19__T11 = typing.TypeVar('_liftTuple19__T11')  # <T11>
        _liftTuple19__T12 = typing.TypeVar('_liftTuple19__T12')  # <T12>
        _liftTuple19__T13 = typing.TypeVar('_liftTuple19__T13')  # <T13>
        _liftTuple19__T14 = typing.TypeVar('_liftTuple19__T14')  # <T14>
        _liftTuple19__T15 = typing.TypeVar('_liftTuple19__T15')  # <T15>
        _liftTuple19__T16 = typing.TypeVar('_liftTuple19__T16')  # <T16>
        _liftTuple19__T17 = typing.TypeVar('_liftTuple19__T17')  # <T17>
        _liftTuple19__T18 = typing.TypeVar('_liftTuple19__T18')  # <T18>
        _liftTuple19__T19 = typing.TypeVar('_liftTuple19__T19')  # <T19>
        def liftTuple19(self, liftT1: 'Liftables.Liftable'[_liftTuple19__T1], liftT2: 'Liftables.Liftable'[_liftTuple19__T2], liftT3: 'Liftables.Liftable'[_liftTuple19__T3], liftT4: 'Liftables.Liftable'[_liftTuple19__T4], liftT5: 'Liftables.Liftable'[_liftTuple19__T5], liftT6: 'Liftables.Liftable'[_liftTuple19__T6], liftT7: 'Liftables.Liftable'[_liftTuple19__T7], liftT8: 'Liftables.Liftable'[_liftTuple19__T8], liftT9: 'Liftables.Liftable'[_liftTuple19__T9], liftT10: 'Liftables.Liftable'[_liftTuple19__T10], liftT11: 'Liftables.Liftable'[_liftTuple19__T11], liftT12: 'Liftables.Liftable'[_liftTuple19__T12], liftT13: 'Liftables.Liftable'[_liftTuple19__T13], liftT14: 'Liftables.Liftable'[_liftTuple19__T14], liftT15: 'Liftables.Liftable'[_liftTuple19__T15], liftT16: 'Liftables.Liftable'[_liftTuple19__T16], liftT17: 'Liftables.Liftable'[_liftTuple19__T17], liftT18: 'Liftables.Liftable'[_liftTuple19__T18], liftT19: 'Liftables.Liftable'[_liftTuple19__T19]) -> 'Liftables.Liftable'[scala.Tuple19[_liftTuple19__T1, _liftTuple19__T2, _liftTuple19__T3, _liftTuple19__T4, _liftTuple19__T5, _liftTuple19__T6, _liftTuple19__T7, _liftTuple19__T8, _liftTuple19__T9, _liftTuple19__T10, _liftTuple19__T11, _liftTuple19__T12, _liftTuple19__T13, _liftTuple19__T14, _liftTuple19__T15, _liftTuple19__T16, _liftTuple19__T17, _liftTuple19__T18, _liftTuple19__T19]]: ...
        _liftTuple2__T1 = typing.TypeVar('_liftTuple2__T1')  # <T1>
        _liftTuple2__T2 = typing.TypeVar('_liftTuple2__T2')  # <T2>
        def liftTuple2(self, liftT1: 'Liftables.Liftable'[_liftTuple2__T1], liftT2: 'Liftables.Liftable'[_liftTuple2__T2]) -> 'Liftables.Liftable'[scala.Tuple2[_liftTuple2__T1, _liftTuple2__T2]]: ...
        _liftTuple20__T1 = typing.TypeVar('_liftTuple20__T1')  # <T1>
        _liftTuple20__T2 = typing.TypeVar('_liftTuple20__T2')  # <T2>
        _liftTuple20__T3 = typing.TypeVar('_liftTuple20__T3')  # <T3>
        _liftTuple20__T4 = typing.TypeVar('_liftTuple20__T4')  # <T4>
        _liftTuple20__T5 = typing.TypeVar('_liftTuple20__T5')  # <T5>
        _liftTuple20__T6 = typing.TypeVar('_liftTuple20__T6')  # <T6>
        _liftTuple20__T7 = typing.TypeVar('_liftTuple20__T7')  # <T7>
        _liftTuple20__T8 = typing.TypeVar('_liftTuple20__T8')  # <T8>
        _liftTuple20__T9 = typing.TypeVar('_liftTuple20__T9')  # <T9>
        _liftTuple20__T10 = typing.TypeVar('_liftTuple20__T10')  # <T10>
        _liftTuple20__T11 = typing.TypeVar('_liftTuple20__T11')  # <T11>
        _liftTuple20__T12 = typing.TypeVar('_liftTuple20__T12')  # <T12>
        _liftTuple20__T13 = typing.TypeVar('_liftTuple20__T13')  # <T13>
        _liftTuple20__T14 = typing.TypeVar('_liftTuple20__T14')  # <T14>
        _liftTuple20__T15 = typing.TypeVar('_liftTuple20__T15')  # <T15>
        _liftTuple20__T16 = typing.TypeVar('_liftTuple20__T16')  # <T16>
        _liftTuple20__T17 = typing.TypeVar('_liftTuple20__T17')  # <T17>
        _liftTuple20__T18 = typing.TypeVar('_liftTuple20__T18')  # <T18>
        _liftTuple20__T19 = typing.TypeVar('_liftTuple20__T19')  # <T19>
        _liftTuple20__T20 = typing.TypeVar('_liftTuple20__T20')  # <T20>
        def liftTuple20(self, liftT1: 'Liftables.Liftable'[_liftTuple20__T1], liftT2: 'Liftables.Liftable'[_liftTuple20__T2], liftT3: 'Liftables.Liftable'[_liftTuple20__T3], liftT4: 'Liftables.Liftable'[_liftTuple20__T4], liftT5: 'Liftables.Liftable'[_liftTuple20__T5], liftT6: 'Liftables.Liftable'[_liftTuple20__T6], liftT7: 'Liftables.Liftable'[_liftTuple20__T7], liftT8: 'Liftables.Liftable'[_liftTuple20__T8], liftT9: 'Liftables.Liftable'[_liftTuple20__T9], liftT10: 'Liftables.Liftable'[_liftTuple20__T10], liftT11: 'Liftables.Liftable'[_liftTuple20__T11], liftT12: 'Liftables.Liftable'[_liftTuple20__T12], liftT13: 'Liftables.Liftable'[_liftTuple20__T13], liftT14: 'Liftables.Liftable'[_liftTuple20__T14], liftT15: 'Liftables.Liftable'[_liftTuple20__T15], liftT16: 'Liftables.Liftable'[_liftTuple20__T16], liftT17: 'Liftables.Liftable'[_liftTuple20__T17], liftT18: 'Liftables.Liftable'[_liftTuple20__T18], liftT19: 'Liftables.Liftable'[_liftTuple20__T19], liftT20: 'Liftables.Liftable'[_liftTuple20__T20]) -> 'Liftables.Liftable'[scala.Tuple20[_liftTuple20__T1, _liftTuple20__T2, _liftTuple20__T3, _liftTuple20__T4, _liftTuple20__T5, _liftTuple20__T6, _liftTuple20__T7, _liftTuple20__T8, _liftTuple20__T9, _liftTuple20__T10, _liftTuple20__T11, _liftTuple20__T12, _liftTuple20__T13, _liftTuple20__T14, _liftTuple20__T15, _liftTuple20__T16, _liftTuple20__T17, _liftTuple20__T18, _liftTuple20__T19, _liftTuple20__T20]]: ...
        _liftTuple21__T1 = typing.TypeVar('_liftTuple21__T1')  # <T1>
        _liftTuple21__T2 = typing.TypeVar('_liftTuple21__T2')  # <T2>
        _liftTuple21__T3 = typing.TypeVar('_liftTuple21__T3')  # <T3>
        _liftTuple21__T4 = typing.TypeVar('_liftTuple21__T4')  # <T4>
        _liftTuple21__T5 = typing.TypeVar('_liftTuple21__T5')  # <T5>
        _liftTuple21__T6 = typing.TypeVar('_liftTuple21__T6')  # <T6>
        _liftTuple21__T7 = typing.TypeVar('_liftTuple21__T7')  # <T7>
        _liftTuple21__T8 = typing.TypeVar('_liftTuple21__T8')  # <T8>
        _liftTuple21__T9 = typing.TypeVar('_liftTuple21__T9')  # <T9>
        _liftTuple21__T10 = typing.TypeVar('_liftTuple21__T10')  # <T10>
        _liftTuple21__T11 = typing.TypeVar('_liftTuple21__T11')  # <T11>
        _liftTuple21__T12 = typing.TypeVar('_liftTuple21__T12')  # <T12>
        _liftTuple21__T13 = typing.TypeVar('_liftTuple21__T13')  # <T13>
        _liftTuple21__T14 = typing.TypeVar('_liftTuple21__T14')  # <T14>
        _liftTuple21__T15 = typing.TypeVar('_liftTuple21__T15')  # <T15>
        _liftTuple21__T16 = typing.TypeVar('_liftTuple21__T16')  # <T16>
        _liftTuple21__T17 = typing.TypeVar('_liftTuple21__T17')  # <T17>
        _liftTuple21__T18 = typing.TypeVar('_liftTuple21__T18')  # <T18>
        _liftTuple21__T19 = typing.TypeVar('_liftTuple21__T19')  # <T19>
        _liftTuple21__T20 = typing.TypeVar('_liftTuple21__T20')  # <T20>
        _liftTuple21__T21 = typing.TypeVar('_liftTuple21__T21')  # <T21>
        def liftTuple21(self, liftT1: 'Liftables.Liftable'[_liftTuple21__T1], liftT2: 'Liftables.Liftable'[_liftTuple21__T2], liftT3: 'Liftables.Liftable'[_liftTuple21__T3], liftT4: 'Liftables.Liftable'[_liftTuple21__T4], liftT5: 'Liftables.Liftable'[_liftTuple21__T5], liftT6: 'Liftables.Liftable'[_liftTuple21__T6], liftT7: 'Liftables.Liftable'[_liftTuple21__T7], liftT8: 'Liftables.Liftable'[_liftTuple21__T8], liftT9: 'Liftables.Liftable'[_liftTuple21__T9], liftT10: 'Liftables.Liftable'[_liftTuple21__T10], liftT11: 'Liftables.Liftable'[_liftTuple21__T11], liftT12: 'Liftables.Liftable'[_liftTuple21__T12], liftT13: 'Liftables.Liftable'[_liftTuple21__T13], liftT14: 'Liftables.Liftable'[_liftTuple21__T14], liftT15: 'Liftables.Liftable'[_liftTuple21__T15], liftT16: 'Liftables.Liftable'[_liftTuple21__T16], liftT17: 'Liftables.Liftable'[_liftTuple21__T17], liftT18: 'Liftables.Liftable'[_liftTuple21__T18], liftT19: 'Liftables.Liftable'[_liftTuple21__T19], liftT20: 'Liftables.Liftable'[_liftTuple21__T20], liftT21: 'Liftables.Liftable'[_liftTuple21__T21]) -> 'Liftables.Liftable'[scala.Tuple21[_liftTuple21__T1, _liftTuple21__T2, _liftTuple21__T3, _liftTuple21__T4, _liftTuple21__T5, _liftTuple21__T6, _liftTuple21__T7, _liftTuple21__T8, _liftTuple21__T9, _liftTuple21__T10, _liftTuple21__T11, _liftTuple21__T12, _liftTuple21__T13, _liftTuple21__T14, _liftTuple21__T15, _liftTuple21__T16, _liftTuple21__T17, _liftTuple21__T18, _liftTuple21__T19, _liftTuple21__T20, _liftTuple21__T21]]: ...
        _liftTuple22__T1 = typing.TypeVar('_liftTuple22__T1')  # <T1>
        _liftTuple22__T2 = typing.TypeVar('_liftTuple22__T2')  # <T2>
        _liftTuple22__T3 = typing.TypeVar('_liftTuple22__T3')  # <T3>
        _liftTuple22__T4 = typing.TypeVar('_liftTuple22__T4')  # <T4>
        _liftTuple22__T5 = typing.TypeVar('_liftTuple22__T5')  # <T5>
        _liftTuple22__T6 = typing.TypeVar('_liftTuple22__T6')  # <T6>
        _liftTuple22__T7 = typing.TypeVar('_liftTuple22__T7')  # <T7>
        _liftTuple22__T8 = typing.TypeVar('_liftTuple22__T8')  # <T8>
        _liftTuple22__T9 = typing.TypeVar('_liftTuple22__T9')  # <T9>
        _liftTuple22__T10 = typing.TypeVar('_liftTuple22__T10')  # <T10>
        _liftTuple22__T11 = typing.TypeVar('_liftTuple22__T11')  # <T11>
        _liftTuple22__T12 = typing.TypeVar('_liftTuple22__T12')  # <T12>
        _liftTuple22__T13 = typing.TypeVar('_liftTuple22__T13')  # <T13>
        _liftTuple22__T14 = typing.TypeVar('_liftTuple22__T14')  # <T14>
        _liftTuple22__T15 = typing.TypeVar('_liftTuple22__T15')  # <T15>
        _liftTuple22__T16 = typing.TypeVar('_liftTuple22__T16')  # <T16>
        _liftTuple22__T17 = typing.TypeVar('_liftTuple22__T17')  # <T17>
        _liftTuple22__T18 = typing.TypeVar('_liftTuple22__T18')  # <T18>
        _liftTuple22__T19 = typing.TypeVar('_liftTuple22__T19')  # <T19>
        _liftTuple22__T20 = typing.TypeVar('_liftTuple22__T20')  # <T20>
        _liftTuple22__T21 = typing.TypeVar('_liftTuple22__T21')  # <T21>
        _liftTuple22__T22 = typing.TypeVar('_liftTuple22__T22')  # <T22>
        def liftTuple22(self, liftT1: 'Liftables.Liftable'[_liftTuple22__T1], liftT2: 'Liftables.Liftable'[_liftTuple22__T2], liftT3: 'Liftables.Liftable'[_liftTuple22__T3], liftT4: 'Liftables.Liftable'[_liftTuple22__T4], liftT5: 'Liftables.Liftable'[_liftTuple22__T5], liftT6: 'Liftables.Liftable'[_liftTuple22__T6], liftT7: 'Liftables.Liftable'[_liftTuple22__T7], liftT8: 'Liftables.Liftable'[_liftTuple22__T8], liftT9: 'Liftables.Liftable'[_liftTuple22__T9], liftT10: 'Liftables.Liftable'[_liftTuple22__T10], liftT11: 'Liftables.Liftable'[_liftTuple22__T11], liftT12: 'Liftables.Liftable'[_liftTuple22__T12], liftT13: 'Liftables.Liftable'[_liftTuple22__T13], liftT14: 'Liftables.Liftable'[_liftTuple22__T14], liftT15: 'Liftables.Liftable'[_liftTuple22__T15], liftT16: 'Liftables.Liftable'[_liftTuple22__T16], liftT17: 'Liftables.Liftable'[_liftTuple22__T17], liftT18: 'Liftables.Liftable'[_liftTuple22__T18], liftT19: 'Liftables.Liftable'[_liftTuple22__T19], liftT20: 'Liftables.Liftable'[_liftTuple22__T20], liftT21: 'Liftables.Liftable'[_liftTuple22__T21], liftT22: 'Liftables.Liftable'[_liftTuple22__T22]) -> 'Liftables.Liftable'[scala.Tuple22[_liftTuple22__T1, _liftTuple22__T2, _liftTuple22__T3, _liftTuple22__T4, _liftTuple22__T5, _liftTuple22__T6, _liftTuple22__T7, _liftTuple22__T8, _liftTuple22__T9, _liftTuple22__T10, _liftTuple22__T11, _liftTuple22__T12, _liftTuple22__T13, _liftTuple22__T14, _liftTuple22__T15, _liftTuple22__T16, _liftTuple22__T17, _liftTuple22__T18, _liftTuple22__T19, _liftTuple22__T20, _liftTuple22__T21, _liftTuple22__T22]]: ...
        _liftTuple3__T1 = typing.TypeVar('_liftTuple3__T1')  # <T1>
        _liftTuple3__T2 = typing.TypeVar('_liftTuple3__T2')  # <T2>
        _liftTuple3__T3 = typing.TypeVar('_liftTuple3__T3')  # <T3>
        def liftTuple3(self, liftT1: 'Liftables.Liftable'[_liftTuple3__T1], liftT2: 'Liftables.Liftable'[_liftTuple3__T2], liftT3: 'Liftables.Liftable'[_liftTuple3__T3]) -> 'Liftables.Liftable'[scala.Tuple3[_liftTuple3__T1, _liftTuple3__T2, _liftTuple3__T3]]: ...
        _liftTuple4__T1 = typing.TypeVar('_liftTuple4__T1')  # <T1>
        _liftTuple4__T2 = typing.TypeVar('_liftTuple4__T2')  # <T2>
        _liftTuple4__T3 = typing.TypeVar('_liftTuple4__T3')  # <T3>
        _liftTuple4__T4 = typing.TypeVar('_liftTuple4__T4')  # <T4>
        def liftTuple4(self, liftT1: 'Liftables.Liftable'[_liftTuple4__T1], liftT2: 'Liftables.Liftable'[_liftTuple4__T2], liftT3: 'Liftables.Liftable'[_liftTuple4__T3], liftT4: 'Liftables.Liftable'[_liftTuple4__T4]) -> 'Liftables.Liftable'[scala.Tuple4[_liftTuple4__T1, _liftTuple4__T2, _liftTuple4__T3, _liftTuple4__T4]]: ...
        _liftTuple5__T1 = typing.TypeVar('_liftTuple5__T1')  # <T1>
        _liftTuple5__T2 = typing.TypeVar('_liftTuple5__T2')  # <T2>
        _liftTuple5__T3 = typing.TypeVar('_liftTuple5__T3')  # <T3>
        _liftTuple5__T4 = typing.TypeVar('_liftTuple5__T4')  # <T4>
        _liftTuple5__T5 = typing.TypeVar('_liftTuple5__T5')  # <T5>
        def liftTuple5(self, liftT1: 'Liftables.Liftable'[_liftTuple5__T1], liftT2: 'Liftables.Liftable'[_liftTuple5__T2], liftT3: 'Liftables.Liftable'[_liftTuple5__T3], liftT4: 'Liftables.Liftable'[_liftTuple5__T4], liftT5: 'Liftables.Liftable'[_liftTuple5__T5]) -> 'Liftables.Liftable'[scala.Tuple5[_liftTuple5__T1, _liftTuple5__T2, _liftTuple5__T3, _liftTuple5__T4, _liftTuple5__T5]]: ...
        _liftTuple6__T1 = typing.TypeVar('_liftTuple6__T1')  # <T1>
        _liftTuple6__T2 = typing.TypeVar('_liftTuple6__T2')  # <T2>
        _liftTuple6__T3 = typing.TypeVar('_liftTuple6__T3')  # <T3>
        _liftTuple6__T4 = typing.TypeVar('_liftTuple6__T4')  # <T4>
        _liftTuple6__T5 = typing.TypeVar('_liftTuple6__T5')  # <T5>
        _liftTuple6__T6 = typing.TypeVar('_liftTuple6__T6')  # <T6>
        def liftTuple6(self, liftT1: 'Liftables.Liftable'[_liftTuple6__T1], liftT2: 'Liftables.Liftable'[_liftTuple6__T2], liftT3: 'Liftables.Liftable'[_liftTuple6__T3], liftT4: 'Liftables.Liftable'[_liftTuple6__T4], liftT5: 'Liftables.Liftable'[_liftTuple6__T5], liftT6: 'Liftables.Liftable'[_liftTuple6__T6]) -> 'Liftables.Liftable'[scala.Tuple6[_liftTuple6__T1, _liftTuple6__T2, _liftTuple6__T3, _liftTuple6__T4, _liftTuple6__T5, _liftTuple6__T6]]: ...
        _liftTuple7__T1 = typing.TypeVar('_liftTuple7__T1')  # <T1>
        _liftTuple7__T2 = typing.TypeVar('_liftTuple7__T2')  # <T2>
        _liftTuple7__T3 = typing.TypeVar('_liftTuple7__T3')  # <T3>
        _liftTuple7__T4 = typing.TypeVar('_liftTuple7__T4')  # <T4>
        _liftTuple7__T5 = typing.TypeVar('_liftTuple7__T5')  # <T5>
        _liftTuple7__T6 = typing.TypeVar('_liftTuple7__T6')  # <T6>
        _liftTuple7__T7 = typing.TypeVar('_liftTuple7__T7')  # <T7>
        def liftTuple7(self, liftT1: 'Liftables.Liftable'[_liftTuple7__T1], liftT2: 'Liftables.Liftable'[_liftTuple7__T2], liftT3: 'Liftables.Liftable'[_liftTuple7__T3], liftT4: 'Liftables.Liftable'[_liftTuple7__T4], liftT5: 'Liftables.Liftable'[_liftTuple7__T5], liftT6: 'Liftables.Liftable'[_liftTuple7__T6], liftT7: 'Liftables.Liftable'[_liftTuple7__T7]) -> 'Liftables.Liftable'[scala.Tuple7[_liftTuple7__T1, _liftTuple7__T2, _liftTuple7__T3, _liftTuple7__T4, _liftTuple7__T5, _liftTuple7__T6, _liftTuple7__T7]]: ...
        _liftTuple8__T1 = typing.TypeVar('_liftTuple8__T1')  # <T1>
        _liftTuple8__T2 = typing.TypeVar('_liftTuple8__T2')  # <T2>
        _liftTuple8__T3 = typing.TypeVar('_liftTuple8__T3')  # <T3>
        _liftTuple8__T4 = typing.TypeVar('_liftTuple8__T4')  # <T4>
        _liftTuple8__T5 = typing.TypeVar('_liftTuple8__T5')  # <T5>
        _liftTuple8__T6 = typing.TypeVar('_liftTuple8__T6')  # <T6>
        _liftTuple8__T7 = typing.TypeVar('_liftTuple8__T7')  # <T7>
        _liftTuple8__T8 = typing.TypeVar('_liftTuple8__T8')  # <T8>
        def liftTuple8(self, liftT1: 'Liftables.Liftable'[_liftTuple8__T1], liftT2: 'Liftables.Liftable'[_liftTuple8__T2], liftT3: 'Liftables.Liftable'[_liftTuple8__T3], liftT4: 'Liftables.Liftable'[_liftTuple8__T4], liftT5: 'Liftables.Liftable'[_liftTuple8__T5], liftT6: 'Liftables.Liftable'[_liftTuple8__T6], liftT7: 'Liftables.Liftable'[_liftTuple8__T7], liftT8: 'Liftables.Liftable'[_liftTuple8__T8]) -> 'Liftables.Liftable'[scala.Tuple8[_liftTuple8__T1, _liftTuple8__T2, _liftTuple8__T3, _liftTuple8__T4, _liftTuple8__T5, _liftTuple8__T6, _liftTuple8__T7, _liftTuple8__T8]]: ...
        _liftTuple9__T1 = typing.TypeVar('_liftTuple9__T1')  # <T1>
        _liftTuple9__T2 = typing.TypeVar('_liftTuple9__T2')  # <T2>
        _liftTuple9__T3 = typing.TypeVar('_liftTuple9__T3')  # <T3>
        _liftTuple9__T4 = typing.TypeVar('_liftTuple9__T4')  # <T4>
        _liftTuple9__T5 = typing.TypeVar('_liftTuple9__T5')  # <T5>
        _liftTuple9__T6 = typing.TypeVar('_liftTuple9__T6')  # <T6>
        _liftTuple9__T7 = typing.TypeVar('_liftTuple9__T7')  # <T7>
        _liftTuple9__T8 = typing.TypeVar('_liftTuple9__T8')  # <T8>
        _liftTuple9__T9 = typing.TypeVar('_liftTuple9__T9')  # <T9>
        def liftTuple9(self, liftT1: 'Liftables.Liftable'[_liftTuple9__T1], liftT2: 'Liftables.Liftable'[_liftTuple9__T2], liftT3: 'Liftables.Liftable'[_liftTuple9__T3], liftT4: 'Liftables.Liftable'[_liftTuple9__T4], liftT5: 'Liftables.Liftable'[_liftTuple9__T5], liftT6: 'Liftables.Liftable'[_liftTuple9__T6], liftT7: 'Liftables.Liftable'[_liftTuple9__T7], liftT8: 'Liftables.Liftable'[_liftTuple9__T8], liftT9: 'Liftables.Liftable'[_liftTuple9__T9]) -> 'Liftables.Liftable'[scala.Tuple9[_liftTuple9__T1, _liftTuple9__T2, _liftTuple9__T3, _liftTuple9__T4, _liftTuple9__T5, _liftTuple9__T6, _liftTuple9__T7, _liftTuple9__T8, _liftTuple9__T9]]: ...
        _liftType__T = typing.TypeVar('_liftType__T', bound='Types.TypeApi')  # <T>
        def liftType(self) -> 'Liftables.Liftable'[_liftType__T]: ...
        _liftTypeTag__T = typing.TypeVar('_liftTypeTag__T', bound='TypeTags.WeakTypeTag')  # <T>
        def liftTypeTag(self) -> 'Liftables.Liftable'[_liftTypeTag__T]: ...
        def liftUnit(self) -> 'Liftables.Liftable'[scala.runtime.BoxedUnit]: ...
        _liftVector__T = typing.TypeVar('_liftVector__T')  # <T>
        def liftVector(self, evidence$3: 'Liftables.Liftable'[_liftVector__T]) -> 'Liftables.Liftable'[scala.collection.immutable.Vector[_liftVector__T]]: ...
    class StandardUnliftableInstances:
        @staticmethod
        def $init$($this: 'StandardLiftables.StandardUnliftableInstances') -> None: ...
        def unliftBoolean(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftByte(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftChar(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftConstant(self) -> 'Liftables.Unliftable'[Constants.ConstantApi]: ...
        def unliftDouble(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftFloat(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftInt(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftLong(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        _unliftName__T = typing.TypeVar('_unliftName__T', bound=Names.NameApi)  # <T>
        def unliftName(self, evidence$16: scala.reflect.ClassTag[_unliftName__T]) -> 'Liftables.Unliftable'[_unliftName__T]: ...
        def unliftScalaSymbol(self) -> 'Liftables.Unliftable'[scala.Symbol]: ...
        def unliftShort(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftString(self) -> 'Liftables.Unliftable'[java.lang.String]: ...
        _unliftTuple10__T1 = typing.TypeVar('_unliftTuple10__T1')  # <T1>
        _unliftTuple10__T2 = typing.TypeVar('_unliftTuple10__T2')  # <T2>
        _unliftTuple10__T3 = typing.TypeVar('_unliftTuple10__T3')  # <T3>
        _unliftTuple10__T4 = typing.TypeVar('_unliftTuple10__T4')  # <T4>
        _unliftTuple10__T5 = typing.TypeVar('_unliftTuple10__T5')  # <T5>
        _unliftTuple10__T6 = typing.TypeVar('_unliftTuple10__T6')  # <T6>
        _unliftTuple10__T7 = typing.TypeVar('_unliftTuple10__T7')  # <T7>
        _unliftTuple10__T8 = typing.TypeVar('_unliftTuple10__T8')  # <T8>
        _unliftTuple10__T9 = typing.TypeVar('_unliftTuple10__T9')  # <T9>
        _unliftTuple10__T10 = typing.TypeVar('_unliftTuple10__T10')  # <T10>
        def unliftTuple10(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple10__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple10__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple10__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple10__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple10__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple10__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple10__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple10__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple10__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple10__T10]) -> 'Liftables.Unliftable'[scala.Tuple10[_unliftTuple10__T1, _unliftTuple10__T2, _unliftTuple10__T3, _unliftTuple10__T4, _unliftTuple10__T5, _unliftTuple10__T6, _unliftTuple10__T7, _unliftTuple10__T8, _unliftTuple10__T9, _unliftTuple10__T10]]: ...
        _unliftTuple11__T1 = typing.TypeVar('_unliftTuple11__T1')  # <T1>
        _unliftTuple11__T2 = typing.TypeVar('_unliftTuple11__T2')  # <T2>
        _unliftTuple11__T3 = typing.TypeVar('_unliftTuple11__T3')  # <T3>
        _unliftTuple11__T4 = typing.TypeVar('_unliftTuple11__T4')  # <T4>
        _unliftTuple11__T5 = typing.TypeVar('_unliftTuple11__T5')  # <T5>
        _unliftTuple11__T6 = typing.TypeVar('_unliftTuple11__T6')  # <T6>
        _unliftTuple11__T7 = typing.TypeVar('_unliftTuple11__T7')  # <T7>
        _unliftTuple11__T8 = typing.TypeVar('_unliftTuple11__T8')  # <T8>
        _unliftTuple11__T9 = typing.TypeVar('_unliftTuple11__T9')  # <T9>
        _unliftTuple11__T10 = typing.TypeVar('_unliftTuple11__T10')  # <T10>
        _unliftTuple11__T11 = typing.TypeVar('_unliftTuple11__T11')  # <T11>
        def unliftTuple11(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple11__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple11__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple11__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple11__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple11__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple11__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple11__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple11__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple11__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple11__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple11__T11]) -> 'Liftables.Unliftable'[scala.Tuple11[_unliftTuple11__T1, _unliftTuple11__T2, _unliftTuple11__T3, _unliftTuple11__T4, _unliftTuple11__T5, _unliftTuple11__T6, _unliftTuple11__T7, _unliftTuple11__T8, _unliftTuple11__T9, _unliftTuple11__T10, _unliftTuple11__T11]]: ...
        _unliftTuple12__T1 = typing.TypeVar('_unliftTuple12__T1')  # <T1>
        _unliftTuple12__T2 = typing.TypeVar('_unliftTuple12__T2')  # <T2>
        _unliftTuple12__T3 = typing.TypeVar('_unliftTuple12__T3')  # <T3>
        _unliftTuple12__T4 = typing.TypeVar('_unliftTuple12__T4')  # <T4>
        _unliftTuple12__T5 = typing.TypeVar('_unliftTuple12__T5')  # <T5>
        _unliftTuple12__T6 = typing.TypeVar('_unliftTuple12__T6')  # <T6>
        _unliftTuple12__T7 = typing.TypeVar('_unliftTuple12__T7')  # <T7>
        _unliftTuple12__T8 = typing.TypeVar('_unliftTuple12__T8')  # <T8>
        _unliftTuple12__T9 = typing.TypeVar('_unliftTuple12__T9')  # <T9>
        _unliftTuple12__T10 = typing.TypeVar('_unliftTuple12__T10')  # <T10>
        _unliftTuple12__T11 = typing.TypeVar('_unliftTuple12__T11')  # <T11>
        _unliftTuple12__T12 = typing.TypeVar('_unliftTuple12__T12')  # <T12>
        def unliftTuple12(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple12__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple12__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple12__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple12__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple12__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple12__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple12__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple12__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple12__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple12__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple12__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple12__T12]) -> 'Liftables.Unliftable'[scala.Tuple12[_unliftTuple12__T1, _unliftTuple12__T2, _unliftTuple12__T3, _unliftTuple12__T4, _unliftTuple12__T5, _unliftTuple12__T6, _unliftTuple12__T7, _unliftTuple12__T8, _unliftTuple12__T9, _unliftTuple12__T10, _unliftTuple12__T11, _unliftTuple12__T12]]: ...
        _unliftTuple13__T1 = typing.TypeVar('_unliftTuple13__T1')  # <T1>
        _unliftTuple13__T2 = typing.TypeVar('_unliftTuple13__T2')  # <T2>
        _unliftTuple13__T3 = typing.TypeVar('_unliftTuple13__T3')  # <T3>
        _unliftTuple13__T4 = typing.TypeVar('_unliftTuple13__T4')  # <T4>
        _unliftTuple13__T5 = typing.TypeVar('_unliftTuple13__T5')  # <T5>
        _unliftTuple13__T6 = typing.TypeVar('_unliftTuple13__T6')  # <T6>
        _unliftTuple13__T7 = typing.TypeVar('_unliftTuple13__T7')  # <T7>
        _unliftTuple13__T8 = typing.TypeVar('_unliftTuple13__T8')  # <T8>
        _unliftTuple13__T9 = typing.TypeVar('_unliftTuple13__T9')  # <T9>
        _unliftTuple13__T10 = typing.TypeVar('_unliftTuple13__T10')  # <T10>
        _unliftTuple13__T11 = typing.TypeVar('_unliftTuple13__T11')  # <T11>
        _unliftTuple13__T12 = typing.TypeVar('_unliftTuple13__T12')  # <T12>
        _unliftTuple13__T13 = typing.TypeVar('_unliftTuple13__T13')  # <T13>
        def unliftTuple13(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple13__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple13__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple13__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple13__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple13__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple13__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple13__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple13__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple13__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple13__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple13__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple13__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple13__T13]) -> 'Liftables.Unliftable'[scala.Tuple13[_unliftTuple13__T1, _unliftTuple13__T2, _unliftTuple13__T3, _unliftTuple13__T4, _unliftTuple13__T5, _unliftTuple13__T6, _unliftTuple13__T7, _unliftTuple13__T8, _unliftTuple13__T9, _unliftTuple13__T10, _unliftTuple13__T11, _unliftTuple13__T12, _unliftTuple13__T13]]: ...
        _unliftTuple14__T1 = typing.TypeVar('_unliftTuple14__T1')  # <T1>
        _unliftTuple14__T2 = typing.TypeVar('_unliftTuple14__T2')  # <T2>
        _unliftTuple14__T3 = typing.TypeVar('_unliftTuple14__T3')  # <T3>
        _unliftTuple14__T4 = typing.TypeVar('_unliftTuple14__T4')  # <T4>
        _unliftTuple14__T5 = typing.TypeVar('_unliftTuple14__T5')  # <T5>
        _unliftTuple14__T6 = typing.TypeVar('_unliftTuple14__T6')  # <T6>
        _unliftTuple14__T7 = typing.TypeVar('_unliftTuple14__T7')  # <T7>
        _unliftTuple14__T8 = typing.TypeVar('_unliftTuple14__T8')  # <T8>
        _unliftTuple14__T9 = typing.TypeVar('_unliftTuple14__T9')  # <T9>
        _unliftTuple14__T10 = typing.TypeVar('_unliftTuple14__T10')  # <T10>
        _unliftTuple14__T11 = typing.TypeVar('_unliftTuple14__T11')  # <T11>
        _unliftTuple14__T12 = typing.TypeVar('_unliftTuple14__T12')  # <T12>
        _unliftTuple14__T13 = typing.TypeVar('_unliftTuple14__T13')  # <T13>
        _unliftTuple14__T14 = typing.TypeVar('_unliftTuple14__T14')  # <T14>
        def unliftTuple14(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple14__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple14__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple14__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple14__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple14__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple14__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple14__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple14__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple14__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple14__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple14__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple14__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple14__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple14__T14]) -> 'Liftables.Unliftable'[scala.Tuple14[_unliftTuple14__T1, _unliftTuple14__T2, _unliftTuple14__T3, _unliftTuple14__T4, _unliftTuple14__T5, _unliftTuple14__T6, _unliftTuple14__T7, _unliftTuple14__T8, _unliftTuple14__T9, _unliftTuple14__T10, _unliftTuple14__T11, _unliftTuple14__T12, _unliftTuple14__T13, _unliftTuple14__T14]]: ...
        _unliftTuple15__T1 = typing.TypeVar('_unliftTuple15__T1')  # <T1>
        _unliftTuple15__T2 = typing.TypeVar('_unliftTuple15__T2')  # <T2>
        _unliftTuple15__T3 = typing.TypeVar('_unliftTuple15__T3')  # <T3>
        _unliftTuple15__T4 = typing.TypeVar('_unliftTuple15__T4')  # <T4>
        _unliftTuple15__T5 = typing.TypeVar('_unliftTuple15__T5')  # <T5>
        _unliftTuple15__T6 = typing.TypeVar('_unliftTuple15__T6')  # <T6>
        _unliftTuple15__T7 = typing.TypeVar('_unliftTuple15__T7')  # <T7>
        _unliftTuple15__T8 = typing.TypeVar('_unliftTuple15__T8')  # <T8>
        _unliftTuple15__T9 = typing.TypeVar('_unliftTuple15__T9')  # <T9>
        _unliftTuple15__T10 = typing.TypeVar('_unliftTuple15__T10')  # <T10>
        _unliftTuple15__T11 = typing.TypeVar('_unliftTuple15__T11')  # <T11>
        _unliftTuple15__T12 = typing.TypeVar('_unliftTuple15__T12')  # <T12>
        _unliftTuple15__T13 = typing.TypeVar('_unliftTuple15__T13')  # <T13>
        _unliftTuple15__T14 = typing.TypeVar('_unliftTuple15__T14')  # <T14>
        _unliftTuple15__T15 = typing.TypeVar('_unliftTuple15__T15')  # <T15>
        def unliftTuple15(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple15__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple15__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple15__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple15__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple15__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple15__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple15__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple15__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple15__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple15__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple15__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple15__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple15__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple15__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple15__T15]) -> 'Liftables.Unliftable'[scala.Tuple15[_unliftTuple15__T1, _unliftTuple15__T2, _unliftTuple15__T3, _unliftTuple15__T4, _unliftTuple15__T5, _unliftTuple15__T6, _unliftTuple15__T7, _unliftTuple15__T8, _unliftTuple15__T9, _unliftTuple15__T10, _unliftTuple15__T11, _unliftTuple15__T12, _unliftTuple15__T13, _unliftTuple15__T14, _unliftTuple15__T15]]: ...
        _unliftTuple16__T1 = typing.TypeVar('_unliftTuple16__T1')  # <T1>
        _unliftTuple16__T2 = typing.TypeVar('_unliftTuple16__T2')  # <T2>
        _unliftTuple16__T3 = typing.TypeVar('_unliftTuple16__T3')  # <T3>
        _unliftTuple16__T4 = typing.TypeVar('_unliftTuple16__T4')  # <T4>
        _unliftTuple16__T5 = typing.TypeVar('_unliftTuple16__T5')  # <T5>
        _unliftTuple16__T6 = typing.TypeVar('_unliftTuple16__T6')  # <T6>
        _unliftTuple16__T7 = typing.TypeVar('_unliftTuple16__T7')  # <T7>
        _unliftTuple16__T8 = typing.TypeVar('_unliftTuple16__T8')  # <T8>
        _unliftTuple16__T9 = typing.TypeVar('_unliftTuple16__T9')  # <T9>
        _unliftTuple16__T10 = typing.TypeVar('_unliftTuple16__T10')  # <T10>
        _unliftTuple16__T11 = typing.TypeVar('_unliftTuple16__T11')  # <T11>
        _unliftTuple16__T12 = typing.TypeVar('_unliftTuple16__T12')  # <T12>
        _unliftTuple16__T13 = typing.TypeVar('_unliftTuple16__T13')  # <T13>
        _unliftTuple16__T14 = typing.TypeVar('_unliftTuple16__T14')  # <T14>
        _unliftTuple16__T15 = typing.TypeVar('_unliftTuple16__T15')  # <T15>
        _unliftTuple16__T16 = typing.TypeVar('_unliftTuple16__T16')  # <T16>
        def unliftTuple16(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple16__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple16__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple16__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple16__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple16__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple16__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple16__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple16__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple16__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple16__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple16__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple16__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple16__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple16__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple16__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple16__T16]) -> 'Liftables.Unliftable'[scala.Tuple16[_unliftTuple16__T1, _unliftTuple16__T2, _unliftTuple16__T3, _unliftTuple16__T4, _unliftTuple16__T5, _unliftTuple16__T6, _unliftTuple16__T7, _unliftTuple16__T8, _unliftTuple16__T9, _unliftTuple16__T10, _unliftTuple16__T11, _unliftTuple16__T12, _unliftTuple16__T13, _unliftTuple16__T14, _unliftTuple16__T15, _unliftTuple16__T16]]: ...
        _unliftTuple17__T1 = typing.TypeVar('_unliftTuple17__T1')  # <T1>
        _unliftTuple17__T2 = typing.TypeVar('_unliftTuple17__T2')  # <T2>
        _unliftTuple17__T3 = typing.TypeVar('_unliftTuple17__T3')  # <T3>
        _unliftTuple17__T4 = typing.TypeVar('_unliftTuple17__T4')  # <T4>
        _unliftTuple17__T5 = typing.TypeVar('_unliftTuple17__T5')  # <T5>
        _unliftTuple17__T6 = typing.TypeVar('_unliftTuple17__T6')  # <T6>
        _unliftTuple17__T7 = typing.TypeVar('_unliftTuple17__T7')  # <T7>
        _unliftTuple17__T8 = typing.TypeVar('_unliftTuple17__T8')  # <T8>
        _unliftTuple17__T9 = typing.TypeVar('_unliftTuple17__T9')  # <T9>
        _unliftTuple17__T10 = typing.TypeVar('_unliftTuple17__T10')  # <T10>
        _unliftTuple17__T11 = typing.TypeVar('_unliftTuple17__T11')  # <T11>
        _unliftTuple17__T12 = typing.TypeVar('_unliftTuple17__T12')  # <T12>
        _unliftTuple17__T13 = typing.TypeVar('_unliftTuple17__T13')  # <T13>
        _unliftTuple17__T14 = typing.TypeVar('_unliftTuple17__T14')  # <T14>
        _unliftTuple17__T15 = typing.TypeVar('_unliftTuple17__T15')  # <T15>
        _unliftTuple17__T16 = typing.TypeVar('_unliftTuple17__T16')  # <T16>
        _unliftTuple17__T17 = typing.TypeVar('_unliftTuple17__T17')  # <T17>
        def unliftTuple17(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple17__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple17__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple17__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple17__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple17__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple17__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple17__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple17__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple17__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple17__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple17__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple17__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple17__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple17__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple17__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple17__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple17__T17]) -> 'Liftables.Unliftable'[scala.Tuple17[_unliftTuple17__T1, _unliftTuple17__T2, _unliftTuple17__T3, _unliftTuple17__T4, _unliftTuple17__T5, _unliftTuple17__T6, _unliftTuple17__T7, _unliftTuple17__T8, _unliftTuple17__T9, _unliftTuple17__T10, _unliftTuple17__T11, _unliftTuple17__T12, _unliftTuple17__T13, _unliftTuple17__T14, _unliftTuple17__T15, _unliftTuple17__T16, _unliftTuple17__T17]]: ...
        _unliftTuple18__T1 = typing.TypeVar('_unliftTuple18__T1')  # <T1>
        _unliftTuple18__T2 = typing.TypeVar('_unliftTuple18__T2')  # <T2>
        _unliftTuple18__T3 = typing.TypeVar('_unliftTuple18__T3')  # <T3>
        _unliftTuple18__T4 = typing.TypeVar('_unliftTuple18__T4')  # <T4>
        _unliftTuple18__T5 = typing.TypeVar('_unliftTuple18__T5')  # <T5>
        _unliftTuple18__T6 = typing.TypeVar('_unliftTuple18__T6')  # <T6>
        _unliftTuple18__T7 = typing.TypeVar('_unliftTuple18__T7')  # <T7>
        _unliftTuple18__T8 = typing.TypeVar('_unliftTuple18__T8')  # <T8>
        _unliftTuple18__T9 = typing.TypeVar('_unliftTuple18__T9')  # <T9>
        _unliftTuple18__T10 = typing.TypeVar('_unliftTuple18__T10')  # <T10>
        _unliftTuple18__T11 = typing.TypeVar('_unliftTuple18__T11')  # <T11>
        _unliftTuple18__T12 = typing.TypeVar('_unliftTuple18__T12')  # <T12>
        _unliftTuple18__T13 = typing.TypeVar('_unliftTuple18__T13')  # <T13>
        _unliftTuple18__T14 = typing.TypeVar('_unliftTuple18__T14')  # <T14>
        _unliftTuple18__T15 = typing.TypeVar('_unliftTuple18__T15')  # <T15>
        _unliftTuple18__T16 = typing.TypeVar('_unliftTuple18__T16')  # <T16>
        _unliftTuple18__T17 = typing.TypeVar('_unliftTuple18__T17')  # <T17>
        _unliftTuple18__T18 = typing.TypeVar('_unliftTuple18__T18')  # <T18>
        def unliftTuple18(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple18__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple18__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple18__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple18__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple18__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple18__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple18__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple18__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple18__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple18__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple18__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple18__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple18__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple18__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple18__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple18__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple18__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple18__T18]) -> 'Liftables.Unliftable'[scala.Tuple18[_unliftTuple18__T1, _unliftTuple18__T2, _unliftTuple18__T3, _unliftTuple18__T4, _unliftTuple18__T5, _unliftTuple18__T6, _unliftTuple18__T7, _unliftTuple18__T8, _unliftTuple18__T9, _unliftTuple18__T10, _unliftTuple18__T11, _unliftTuple18__T12, _unliftTuple18__T13, _unliftTuple18__T14, _unliftTuple18__T15, _unliftTuple18__T16, _unliftTuple18__T17, _unliftTuple18__T18]]: ...
        _unliftTuple19__T1 = typing.TypeVar('_unliftTuple19__T1')  # <T1>
        _unliftTuple19__T2 = typing.TypeVar('_unliftTuple19__T2')  # <T2>
        _unliftTuple19__T3 = typing.TypeVar('_unliftTuple19__T3')  # <T3>
        _unliftTuple19__T4 = typing.TypeVar('_unliftTuple19__T4')  # <T4>
        _unliftTuple19__T5 = typing.TypeVar('_unliftTuple19__T5')  # <T5>
        _unliftTuple19__T6 = typing.TypeVar('_unliftTuple19__T6')  # <T6>
        _unliftTuple19__T7 = typing.TypeVar('_unliftTuple19__T7')  # <T7>
        _unliftTuple19__T8 = typing.TypeVar('_unliftTuple19__T8')  # <T8>
        _unliftTuple19__T9 = typing.TypeVar('_unliftTuple19__T9')  # <T9>
        _unliftTuple19__T10 = typing.TypeVar('_unliftTuple19__T10')  # <T10>
        _unliftTuple19__T11 = typing.TypeVar('_unliftTuple19__T11')  # <T11>
        _unliftTuple19__T12 = typing.TypeVar('_unliftTuple19__T12')  # <T12>
        _unliftTuple19__T13 = typing.TypeVar('_unliftTuple19__T13')  # <T13>
        _unliftTuple19__T14 = typing.TypeVar('_unliftTuple19__T14')  # <T14>
        _unliftTuple19__T15 = typing.TypeVar('_unliftTuple19__T15')  # <T15>
        _unliftTuple19__T16 = typing.TypeVar('_unliftTuple19__T16')  # <T16>
        _unliftTuple19__T17 = typing.TypeVar('_unliftTuple19__T17')  # <T17>
        _unliftTuple19__T18 = typing.TypeVar('_unliftTuple19__T18')  # <T18>
        _unliftTuple19__T19 = typing.TypeVar('_unliftTuple19__T19')  # <T19>
        def unliftTuple19(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple19__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple19__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple19__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple19__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple19__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple19__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple19__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple19__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple19__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple19__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple19__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple19__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple19__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple19__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple19__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple19__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple19__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple19__T18], UnliftT19: 'Liftables.Unliftable'[_unliftTuple19__T19]) -> 'Liftables.Unliftable'[scala.Tuple19[_unliftTuple19__T1, _unliftTuple19__T2, _unliftTuple19__T3, _unliftTuple19__T4, _unliftTuple19__T5, _unliftTuple19__T6, _unliftTuple19__T7, _unliftTuple19__T8, _unliftTuple19__T9, _unliftTuple19__T10, _unliftTuple19__T11, _unliftTuple19__T12, _unliftTuple19__T13, _unliftTuple19__T14, _unliftTuple19__T15, _unliftTuple19__T16, _unliftTuple19__T17, _unliftTuple19__T18, _unliftTuple19__T19]]: ...
        _unliftTuple2__T1 = typing.TypeVar('_unliftTuple2__T1')  # <T1>
        _unliftTuple2__T2 = typing.TypeVar('_unliftTuple2__T2')  # <T2>
        def unliftTuple2(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple2__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple2__T2]) -> 'Liftables.Unliftable'[scala.Tuple2[_unliftTuple2__T1, _unliftTuple2__T2]]: ...
        _unliftTuple20__T1 = typing.TypeVar('_unliftTuple20__T1')  # <T1>
        _unliftTuple20__T2 = typing.TypeVar('_unliftTuple20__T2')  # <T2>
        _unliftTuple20__T3 = typing.TypeVar('_unliftTuple20__T3')  # <T3>
        _unliftTuple20__T4 = typing.TypeVar('_unliftTuple20__T4')  # <T4>
        _unliftTuple20__T5 = typing.TypeVar('_unliftTuple20__T5')  # <T5>
        _unliftTuple20__T6 = typing.TypeVar('_unliftTuple20__T6')  # <T6>
        _unliftTuple20__T7 = typing.TypeVar('_unliftTuple20__T7')  # <T7>
        _unliftTuple20__T8 = typing.TypeVar('_unliftTuple20__T8')  # <T8>
        _unliftTuple20__T9 = typing.TypeVar('_unliftTuple20__T9')  # <T9>
        _unliftTuple20__T10 = typing.TypeVar('_unliftTuple20__T10')  # <T10>
        _unliftTuple20__T11 = typing.TypeVar('_unliftTuple20__T11')  # <T11>
        _unliftTuple20__T12 = typing.TypeVar('_unliftTuple20__T12')  # <T12>
        _unliftTuple20__T13 = typing.TypeVar('_unliftTuple20__T13')  # <T13>
        _unliftTuple20__T14 = typing.TypeVar('_unliftTuple20__T14')  # <T14>
        _unliftTuple20__T15 = typing.TypeVar('_unliftTuple20__T15')  # <T15>
        _unliftTuple20__T16 = typing.TypeVar('_unliftTuple20__T16')  # <T16>
        _unliftTuple20__T17 = typing.TypeVar('_unliftTuple20__T17')  # <T17>
        _unliftTuple20__T18 = typing.TypeVar('_unliftTuple20__T18')  # <T18>
        _unliftTuple20__T19 = typing.TypeVar('_unliftTuple20__T19')  # <T19>
        _unliftTuple20__T20 = typing.TypeVar('_unliftTuple20__T20')  # <T20>
        def unliftTuple20(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple20__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple20__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple20__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple20__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple20__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple20__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple20__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple20__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple20__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple20__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple20__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple20__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple20__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple20__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple20__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple20__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple20__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple20__T18], UnliftT19: 'Liftables.Unliftable'[_unliftTuple20__T19], UnliftT20: 'Liftables.Unliftable'[_unliftTuple20__T20]) -> 'Liftables.Unliftable'[scala.Tuple20[_unliftTuple20__T1, _unliftTuple20__T2, _unliftTuple20__T3, _unliftTuple20__T4, _unliftTuple20__T5, _unliftTuple20__T6, _unliftTuple20__T7, _unliftTuple20__T8, _unliftTuple20__T9, _unliftTuple20__T10, _unliftTuple20__T11, _unliftTuple20__T12, _unliftTuple20__T13, _unliftTuple20__T14, _unliftTuple20__T15, _unliftTuple20__T16, _unliftTuple20__T17, _unliftTuple20__T18, _unliftTuple20__T19, _unliftTuple20__T20]]: ...
        _unliftTuple21__T1 = typing.TypeVar('_unliftTuple21__T1')  # <T1>
        _unliftTuple21__T2 = typing.TypeVar('_unliftTuple21__T2')  # <T2>
        _unliftTuple21__T3 = typing.TypeVar('_unliftTuple21__T3')  # <T3>
        _unliftTuple21__T4 = typing.TypeVar('_unliftTuple21__T4')  # <T4>
        _unliftTuple21__T5 = typing.TypeVar('_unliftTuple21__T5')  # <T5>
        _unliftTuple21__T6 = typing.TypeVar('_unliftTuple21__T6')  # <T6>
        _unliftTuple21__T7 = typing.TypeVar('_unliftTuple21__T7')  # <T7>
        _unliftTuple21__T8 = typing.TypeVar('_unliftTuple21__T8')  # <T8>
        _unliftTuple21__T9 = typing.TypeVar('_unliftTuple21__T9')  # <T9>
        _unliftTuple21__T10 = typing.TypeVar('_unliftTuple21__T10')  # <T10>
        _unliftTuple21__T11 = typing.TypeVar('_unliftTuple21__T11')  # <T11>
        _unliftTuple21__T12 = typing.TypeVar('_unliftTuple21__T12')  # <T12>
        _unliftTuple21__T13 = typing.TypeVar('_unliftTuple21__T13')  # <T13>
        _unliftTuple21__T14 = typing.TypeVar('_unliftTuple21__T14')  # <T14>
        _unliftTuple21__T15 = typing.TypeVar('_unliftTuple21__T15')  # <T15>
        _unliftTuple21__T16 = typing.TypeVar('_unliftTuple21__T16')  # <T16>
        _unliftTuple21__T17 = typing.TypeVar('_unliftTuple21__T17')  # <T17>
        _unliftTuple21__T18 = typing.TypeVar('_unliftTuple21__T18')  # <T18>
        _unliftTuple21__T19 = typing.TypeVar('_unliftTuple21__T19')  # <T19>
        _unliftTuple21__T20 = typing.TypeVar('_unliftTuple21__T20')  # <T20>
        _unliftTuple21__T21 = typing.TypeVar('_unliftTuple21__T21')  # <T21>
        def unliftTuple21(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple21__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple21__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple21__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple21__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple21__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple21__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple21__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple21__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple21__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple21__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple21__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple21__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple21__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple21__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple21__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple21__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple21__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple21__T18], UnliftT19: 'Liftables.Unliftable'[_unliftTuple21__T19], UnliftT20: 'Liftables.Unliftable'[_unliftTuple21__T20], UnliftT21: 'Liftables.Unliftable'[_unliftTuple21__T21]) -> 'Liftables.Unliftable'[scala.Tuple21[_unliftTuple21__T1, _unliftTuple21__T2, _unliftTuple21__T3, _unliftTuple21__T4, _unliftTuple21__T5, _unliftTuple21__T6, _unliftTuple21__T7, _unliftTuple21__T8, _unliftTuple21__T9, _unliftTuple21__T10, _unliftTuple21__T11, _unliftTuple21__T12, _unliftTuple21__T13, _unliftTuple21__T14, _unliftTuple21__T15, _unliftTuple21__T16, _unliftTuple21__T17, _unliftTuple21__T18, _unliftTuple21__T19, _unliftTuple21__T20, _unliftTuple21__T21]]: ...
        _unliftTuple22__T1 = typing.TypeVar('_unliftTuple22__T1')  # <T1>
        _unliftTuple22__T2 = typing.TypeVar('_unliftTuple22__T2')  # <T2>
        _unliftTuple22__T3 = typing.TypeVar('_unliftTuple22__T3')  # <T3>
        _unliftTuple22__T4 = typing.TypeVar('_unliftTuple22__T4')  # <T4>
        _unliftTuple22__T5 = typing.TypeVar('_unliftTuple22__T5')  # <T5>
        _unliftTuple22__T6 = typing.TypeVar('_unliftTuple22__T6')  # <T6>
        _unliftTuple22__T7 = typing.TypeVar('_unliftTuple22__T7')  # <T7>
        _unliftTuple22__T8 = typing.TypeVar('_unliftTuple22__T8')  # <T8>
        _unliftTuple22__T9 = typing.TypeVar('_unliftTuple22__T9')  # <T9>
        _unliftTuple22__T10 = typing.TypeVar('_unliftTuple22__T10')  # <T10>
        _unliftTuple22__T11 = typing.TypeVar('_unliftTuple22__T11')  # <T11>
        _unliftTuple22__T12 = typing.TypeVar('_unliftTuple22__T12')  # <T12>
        _unliftTuple22__T13 = typing.TypeVar('_unliftTuple22__T13')  # <T13>
        _unliftTuple22__T14 = typing.TypeVar('_unliftTuple22__T14')  # <T14>
        _unliftTuple22__T15 = typing.TypeVar('_unliftTuple22__T15')  # <T15>
        _unliftTuple22__T16 = typing.TypeVar('_unliftTuple22__T16')  # <T16>
        _unliftTuple22__T17 = typing.TypeVar('_unliftTuple22__T17')  # <T17>
        _unliftTuple22__T18 = typing.TypeVar('_unliftTuple22__T18')  # <T18>
        _unliftTuple22__T19 = typing.TypeVar('_unliftTuple22__T19')  # <T19>
        _unliftTuple22__T20 = typing.TypeVar('_unliftTuple22__T20')  # <T20>
        _unliftTuple22__T21 = typing.TypeVar('_unliftTuple22__T21')  # <T21>
        _unliftTuple22__T22 = typing.TypeVar('_unliftTuple22__T22')  # <T22>
        def unliftTuple22(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple22__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple22__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple22__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple22__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple22__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple22__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple22__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple22__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple22__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple22__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple22__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple22__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple22__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple22__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple22__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple22__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple22__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple22__T18], UnliftT19: 'Liftables.Unliftable'[_unliftTuple22__T19], UnliftT20: 'Liftables.Unliftable'[_unliftTuple22__T20], UnliftT21: 'Liftables.Unliftable'[_unliftTuple22__T21], UnliftT22: 'Liftables.Unliftable'[_unliftTuple22__T22]) -> 'Liftables.Unliftable'[scala.Tuple22[_unliftTuple22__T1, _unliftTuple22__T2, _unliftTuple22__T3, _unliftTuple22__T4, _unliftTuple22__T5, _unliftTuple22__T6, _unliftTuple22__T7, _unliftTuple22__T8, _unliftTuple22__T9, _unliftTuple22__T10, _unliftTuple22__T11, _unliftTuple22__T12, _unliftTuple22__T13, _unliftTuple22__T14, _unliftTuple22__T15, _unliftTuple22__T16, _unliftTuple22__T17, _unliftTuple22__T18, _unliftTuple22__T19, _unliftTuple22__T20, _unliftTuple22__T21, _unliftTuple22__T22]]: ...
        _unliftTuple3__T1 = typing.TypeVar('_unliftTuple3__T1')  # <T1>
        _unliftTuple3__T2 = typing.TypeVar('_unliftTuple3__T2')  # <T2>
        _unliftTuple3__T3 = typing.TypeVar('_unliftTuple3__T3')  # <T3>
        def unliftTuple3(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple3__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple3__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple3__T3]) -> 'Liftables.Unliftable'[scala.Tuple3[_unliftTuple3__T1, _unliftTuple3__T2, _unliftTuple3__T3]]: ...
        _unliftTuple4__T1 = typing.TypeVar('_unliftTuple4__T1')  # <T1>
        _unliftTuple4__T2 = typing.TypeVar('_unliftTuple4__T2')  # <T2>
        _unliftTuple4__T3 = typing.TypeVar('_unliftTuple4__T3')  # <T3>
        _unliftTuple4__T4 = typing.TypeVar('_unliftTuple4__T4')  # <T4>
        def unliftTuple4(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple4__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple4__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple4__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple4__T4]) -> 'Liftables.Unliftable'[scala.Tuple4[_unliftTuple4__T1, _unliftTuple4__T2, _unliftTuple4__T3, _unliftTuple4__T4]]: ...
        _unliftTuple5__T1 = typing.TypeVar('_unliftTuple5__T1')  # <T1>
        _unliftTuple5__T2 = typing.TypeVar('_unliftTuple5__T2')  # <T2>
        _unliftTuple5__T3 = typing.TypeVar('_unliftTuple5__T3')  # <T3>
        _unliftTuple5__T4 = typing.TypeVar('_unliftTuple5__T4')  # <T4>
        _unliftTuple5__T5 = typing.TypeVar('_unliftTuple5__T5')  # <T5>
        def unliftTuple5(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple5__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple5__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple5__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple5__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple5__T5]) -> 'Liftables.Unliftable'[scala.Tuple5[_unliftTuple5__T1, _unliftTuple5__T2, _unliftTuple5__T3, _unliftTuple5__T4, _unliftTuple5__T5]]: ...
        _unliftTuple6__T1 = typing.TypeVar('_unliftTuple6__T1')  # <T1>
        _unliftTuple6__T2 = typing.TypeVar('_unliftTuple6__T2')  # <T2>
        _unliftTuple6__T3 = typing.TypeVar('_unliftTuple6__T3')  # <T3>
        _unliftTuple6__T4 = typing.TypeVar('_unliftTuple6__T4')  # <T4>
        _unliftTuple6__T5 = typing.TypeVar('_unliftTuple6__T5')  # <T5>
        _unliftTuple6__T6 = typing.TypeVar('_unliftTuple6__T6')  # <T6>
        def unliftTuple6(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple6__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple6__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple6__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple6__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple6__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple6__T6]) -> 'Liftables.Unliftable'[scala.Tuple6[_unliftTuple6__T1, _unliftTuple6__T2, _unliftTuple6__T3, _unliftTuple6__T4, _unliftTuple6__T5, _unliftTuple6__T6]]: ...
        _unliftTuple7__T1 = typing.TypeVar('_unliftTuple7__T1')  # <T1>
        _unliftTuple7__T2 = typing.TypeVar('_unliftTuple7__T2')  # <T2>
        _unliftTuple7__T3 = typing.TypeVar('_unliftTuple7__T3')  # <T3>
        _unliftTuple7__T4 = typing.TypeVar('_unliftTuple7__T4')  # <T4>
        _unliftTuple7__T5 = typing.TypeVar('_unliftTuple7__T5')  # <T5>
        _unliftTuple7__T6 = typing.TypeVar('_unliftTuple7__T6')  # <T6>
        _unliftTuple7__T7 = typing.TypeVar('_unliftTuple7__T7')  # <T7>
        def unliftTuple7(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple7__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple7__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple7__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple7__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple7__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple7__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple7__T7]) -> 'Liftables.Unliftable'[scala.Tuple7[_unliftTuple7__T1, _unliftTuple7__T2, _unliftTuple7__T3, _unliftTuple7__T4, _unliftTuple7__T5, _unliftTuple7__T6, _unliftTuple7__T7]]: ...
        _unliftTuple8__T1 = typing.TypeVar('_unliftTuple8__T1')  # <T1>
        _unliftTuple8__T2 = typing.TypeVar('_unliftTuple8__T2')  # <T2>
        _unliftTuple8__T3 = typing.TypeVar('_unliftTuple8__T3')  # <T3>
        _unliftTuple8__T4 = typing.TypeVar('_unliftTuple8__T4')  # <T4>
        _unliftTuple8__T5 = typing.TypeVar('_unliftTuple8__T5')  # <T5>
        _unliftTuple8__T6 = typing.TypeVar('_unliftTuple8__T6')  # <T6>
        _unliftTuple8__T7 = typing.TypeVar('_unliftTuple8__T7')  # <T7>
        _unliftTuple8__T8 = typing.TypeVar('_unliftTuple8__T8')  # <T8>
        def unliftTuple8(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple8__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple8__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple8__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple8__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple8__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple8__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple8__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple8__T8]) -> 'Liftables.Unliftable'[scala.Tuple8[_unliftTuple8__T1, _unliftTuple8__T2, _unliftTuple8__T3, _unliftTuple8__T4, _unliftTuple8__T5, _unliftTuple8__T6, _unliftTuple8__T7, _unliftTuple8__T8]]: ...
        _unliftTuple9__T1 = typing.TypeVar('_unliftTuple9__T1')  # <T1>
        _unliftTuple9__T2 = typing.TypeVar('_unliftTuple9__T2')  # <T2>
        _unliftTuple9__T3 = typing.TypeVar('_unliftTuple9__T3')  # <T3>
        _unliftTuple9__T4 = typing.TypeVar('_unliftTuple9__T4')  # <T4>
        _unliftTuple9__T5 = typing.TypeVar('_unliftTuple9__T5')  # <T5>
        _unliftTuple9__T6 = typing.TypeVar('_unliftTuple9__T6')  # <T6>
        _unliftTuple9__T7 = typing.TypeVar('_unliftTuple9__T7')  # <T7>
        _unliftTuple9__T8 = typing.TypeVar('_unliftTuple9__T8')  # <T8>
        _unliftTuple9__T9 = typing.TypeVar('_unliftTuple9__T9')  # <T9>
        def unliftTuple9(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple9__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple9__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple9__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple9__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple9__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple9__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple9__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple9__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple9__T9]) -> 'Liftables.Unliftable'[scala.Tuple9[_unliftTuple9__T1, _unliftTuple9__T2, _unliftTuple9__T3, _unliftTuple9__T4, _unliftTuple9__T5, _unliftTuple9__T6, _unliftTuple9__T7, _unliftTuple9__T8, _unliftTuple9__T9]]: ...
        def unliftType(self) -> 'Liftables.Unliftable'['Types.TypeApi']: ...
        def unliftUnit(self) -> 'Liftables.Unliftable'[scala.runtime.BoxedUnit]: ...
    class stdnme$:
        def __init__(self, $outer: 'Universe'): ...
        def Array(self) -> Names.TermNameApi: ...
        def Left(self) -> Names.TermNameApi: ...
        def List(self) -> Names.TermNameApi: ...
        def Map(self) -> Names.TermNameApi: ...
        def Nil(self) -> Names.TermNameApi: ...
        def Right(self) -> Names.TermNameApi: ...
        def Set(self) -> Names.TermNameApi: ...
        def Some(self) -> Names.TermNameApi: ...
        def Symbol(self) -> Names.TermNameApi: ...
        def Vector(self) -> Names.TermNameApi: ...
        def WILDCARD(self) -> Names.TermNameApi: ...
        def collection(self) -> Names.TermNameApi: ...
        def immutable(self) -> Names.TermNameApi: ...
        def util(self) -> Names.TermNameApi: ...

class TreeCreator(scala.Serializable):
    def __init__(self): ...
    _apply__U = typing.TypeVar('_apply__U', bound='Universe')  # <U>
    def apply(self, m: Mirror[_apply__U]) -> 'Trees.TreeApi': ...

class TypeCreator(scala.Serializable):
    def __init__(self): ...
    _apply__U = typing.TypeVar('_apply__U', bound='Universe')  # <U>
    def apply(self, m: Mirror[_apply__U]) -> 'Types.TypeApi': ...

class Types:
    @staticmethod
    def $init$($this: 'Types') -> None: ...
    def AnnotatedType(self) -> 'Types.AnnotatedTypeExtractor': ...
    def BoundedWildcardType(self) -> 'Types.BoundedWildcardTypeExtractor': ...
    def ClassInfoType(self) -> 'Types.ClassInfoTypeExtractor': ...
    def ConstantType(self) -> 'Types.ConstantTypeExtractor': ...
    def ExistentialType(self) -> 'Types.ExistentialTypeExtractor': ...
    def MethodType(self) -> 'Types.MethodTypeExtractor': ...
    def NoPrefix(self) -> 'Types.TypeApi': ...
    def NoType(self) -> 'Types.TypeApi': ...
    def NullaryMethodType(self) -> 'Types.NullaryMethodTypeExtractor': ...
    def PolyType(self) -> 'Types.PolyTypeExtractor': ...
    def RefinedType(self) -> 'Types.RefinedTypeExtractor': ...
    def SingleType(self) -> 'Types.SingleTypeExtractor': ...
    def SuperType(self) -> 'Types.SuperTypeExtractor': ...
    def ThisType(self) -> 'Types.ThisTypeExtractor': ...
    def TypeBounds(self) -> 'Types.TypeBoundsExtractor': ...
    def TypeRef(self) -> 'Types.TypeRefExtractor': ...
    def WildcardType(self) -> 'Types.TypeApi': ...
    @typing.overload
    def appliedType(self, sym: 'Symbols.SymbolApi', args: scala.collection.Seq['Types.TypeApi']) -> 'Types.TypeApi': ...
    @typing.overload
    def appliedType(self, sym: 'Symbols.SymbolApi', args: scala.collection.immutable.List['Types.TypeApi']) -> 'Types.TypeApi': ...
    @typing.overload
    def appliedType(self, tycon: 'Types.TypeApi', args: scala.collection.Seq['Types.TypeApi']) -> 'Types.TypeApi': ...
    @typing.overload
    def appliedType(self, tycon: 'Types.TypeApi', args: scala.collection.immutable.List['Types.TypeApi']) -> 'Types.TypeApi': ...
    def glb(self, ts: scala.collection.immutable.List['Types.TypeApi']) -> 'Types.TypeApi': ...
    def lub(self, xs: scala.collection.immutable.List['Types.TypeApi']) -> 'Types.TypeApi': ...
    class AnnotatedTypeApi:
        def annotations(self) -> scala.collection.immutable.List[Annotations.AnnotationApi]: ...
        def underlying(self) -> 'Types.TypeApi': ...
    class AnnotatedTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, annotations: scala.collection.immutable.List[Annotations.AnnotationApi], underlying: 'Types.TypeApi', token: 'Internals.CompatToken') -> 'Types.AnnotatedTypeApi': ...
        def unapply(self, tpe: 'Types.AnnotatedTypeApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List[Annotations.AnnotationApi], 'Types.TypeApi']]: ...
    class BoundedWildcardTypeApi:
        def bounds(self) -> 'Types.TypeBoundsApi': ...
    class BoundedWildcardTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, bounds: 'Types.TypeBoundsApi', token: 'Internals.CompatToken') -> 'Types.BoundedWildcardTypeApi': ...
        def unapply(self, tpe: 'Types.BoundedWildcardTypeApi') -> scala.Option['Types.TypeBoundsApi']: ...
    class ClassInfoTypeApi:
        def decls(self) -> 'Scopes.MemberScopeApi': ...
        def parents(self) -> scala.collection.immutable.List['Types.TypeApi']: ...
        def typeSymbol(self) -> 'Symbols.SymbolApi': ...
    class ClassInfoTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, parents: scala.collection.immutable.List['Types.TypeApi'], decls: 'Scopes.ScopeApi', typeSymbol: 'Symbols.SymbolApi', token: 'Internals.CompatToken') -> 'Types.ClassInfoTypeApi': ...
        def unapply(self, tpe: 'Types.ClassInfoTypeApi') -> scala.Option[scala.Tuple3[scala.collection.immutable.List['Types.TypeApi'], 'Scopes.ScopeApi', 'Symbols.SymbolApi']]: ...
    class CompoundTypeApi: ...
    class ConstantTypeApi:
        def value(self) -> Constants.ConstantApi: ...
    class ConstantTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, value: Constants.ConstantApi, token: 'Internals.CompatToken') -> 'Types.ConstantTypeApi': ...
        def unapply(self, tpe: 'Types.ConstantTypeApi') -> scala.Option[Constants.ConstantApi]: ...
    class ExistentialTypeApi:
        def quantified(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def underlying(self) -> 'Types.TypeApi': ...
    class ExistentialTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, quantified: scala.collection.immutable.List['Symbols.SymbolApi'], underlying: 'Types.TypeApi', token: 'Internals.CompatToken') -> 'Types.ExistentialTypeApi': ...
        def unapply(self, tpe: 'Types.ExistentialTypeApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Symbols.SymbolApi'], 'Types.TypeApi']]: ...
    class MethodTypeApi:
        def params(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def resultType(self) -> 'Types.TypeApi': ...
    class MethodTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, params: scala.collection.immutable.List['Symbols.SymbolApi'], resultType: 'Types.TypeApi', token: 'Internals.CompatToken') -> 'Types.MethodTypeApi': ...
        def unapply(self, tpe: 'Types.MethodTypeApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Symbols.SymbolApi'], 'Types.TypeApi']]: ...
    class NullaryMethodTypeApi:
        def resultType(self) -> 'Types.TypeApi': ...
    class NullaryMethodTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, resultType: 'Types.TypeApi', token: 'Internals.CompatToken') -> 'Types.NullaryMethodTypeApi': ...
        def unapply(self, tpe: 'Types.NullaryMethodTypeApi') -> scala.Option['Types.TypeApi']: ...
    class PolyTypeApi:
        def resultType(self) -> 'Types.TypeApi': ...
        def typeParams(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
    class PolyTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, typeParams: scala.collection.immutable.List['Symbols.SymbolApi'], resultType: 'Types.TypeApi', token: 'Internals.CompatToken') -> 'Types.PolyTypeApi': ...
        def unapply(self, tpe: 'Types.PolyTypeApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Symbols.SymbolApi'], 'Types.TypeApi']]: ...
    class RefinedTypeApi:
        def decls(self) -> 'Scopes.MemberScopeApi': ...
        def parents(self) -> scala.collection.immutable.List['Types.TypeApi']: ...
    class RefinedTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, parents: scala.collection.immutable.List['Types.TypeApi'], decls: 'Scopes.ScopeApi', token: 'Internals.CompatToken') -> 'Types.RefinedTypeApi': ...
        @typing.overload
        def apply(self, parents: scala.collection.immutable.List['Types.TypeApi'], decls: 'Scopes.ScopeApi', clazz: 'Symbols.SymbolApi', token: 'Internals.CompatToken') -> 'Types.RefinedTypeApi': ...
        def unapply(self, tpe: 'Types.RefinedTypeApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Types.TypeApi'], 'Scopes.ScopeApi']]: ...
    class SingleTypeApi:
        def pre(self) -> 'Types.TypeApi': ...
        def sym(self) -> 'Symbols.SymbolApi': ...
    class SingleTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, pre: 'Types.TypeApi', sym: 'Symbols.SymbolApi', token: 'Internals.CompatToken') -> 'Types.TypeApi': ...
        def unapply(self, tpe: 'Types.SingleTypeApi') -> scala.Option[scala.Tuple2['Types.TypeApi', 'Symbols.SymbolApi']]: ...
    class SingletonTypeApi: ...
    class SuperTypeApi:
        def supertpe(self) -> 'Types.TypeApi': ...
        def thistpe(self) -> 'Types.TypeApi': ...
    class SuperTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, thistpe: 'Types.TypeApi', supertpe: 'Types.TypeApi', token: 'Internals.CompatToken') -> 'Types.TypeApi': ...
        def unapply(self, tpe: 'Types.SuperTypeApi') -> scala.Option[scala.Tuple2['Types.TypeApi', 'Types.TypeApi']]: ...
    class ThisTypeApi:
        def sym(self) -> 'Symbols.SymbolApi': ...
    class ThisTypeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, sym: 'Symbols.SymbolApi', token: 'Internals.CompatToken') -> 'Types.TypeApi': ...
        def unapply(self, tpe: 'Types.ThisTypeApi') -> scala.Option['Symbols.SymbolApi']: ...
    class TypeApi:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def $eq$colon$eq(self, that: 'Types.TypeApi') -> bool: ...
        def $less$colon$less(self, that: 'Types.TypeApi') -> bool: ...
        def asSeenFrom(self, pre: 'Types.TypeApi', clazz: 'Symbols.SymbolApi') -> 'Types.TypeApi': ...
        def baseClasses(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def baseType(self, clazz: 'Symbols.SymbolApi') -> 'Types.TypeApi': ...
        def companion(self) -> 'Types.TypeApi': ...
        def contains(self, sym: 'Symbols.SymbolApi') -> bool: ...
        def dealias(self) -> 'Types.TypeApi': ...
        def decl(self, name: Names.NameApi) -> 'Symbols.SymbolApi': ...
        def declaration(self, name: Names.NameApi) -> 'Symbols.SymbolApi': ...
        def declarations(self) -> 'Scopes.MemberScopeApi': ...
        def decls(self) -> 'Scopes.MemberScopeApi': ...
        def erasure(self) -> 'Types.TypeApi': ...
        def etaExpand(self) -> 'Types.TypeApi': ...
        def exists(self, p: scala.Function1['Types.TypeApi', typing.Any]) -> bool: ...
        def finalResultType(self) -> 'Types.TypeApi': ...
        def find(self, p: scala.Function1['Types.TypeApi', typing.Any]) -> scala.Option['Types.TypeApi']: ...
        def foreach(self, f: scala.Function1['Types.TypeApi', scala.runtime.BoxedUnit]) -> None: ...
        def map(self, f: scala.Function1['Types.TypeApi', 'Types.TypeApi']) -> 'Types.TypeApi': ...
        def member(self, name: Names.NameApi) -> 'Symbols.SymbolApi': ...
        def members(self) -> 'Scopes.MemberScopeApi': ...
        def normalize(self) -> 'Types.TypeApi': ...
        def orElse(self, alt: scala.Function0['Types.TypeApi']) -> 'Types.TypeApi': ...
        def paramLists(self) -> scala.collection.immutable.List[scala.collection.immutable.List['Symbols.SymbolApi']]: ...
        def paramss(self) -> scala.collection.immutable.List[scala.collection.immutable.List['Symbols.SymbolApi']]: ...
        def resultType(self) -> 'Types.TypeApi': ...
        def substituteSymbols(self, from_: scala.collection.immutable.List['Symbols.SymbolApi'], to: scala.collection.immutable.List['Symbols.SymbolApi']) -> 'Types.TypeApi': ...
        def substituteTypes(self, from_: scala.collection.immutable.List['Symbols.SymbolApi'], to: scala.collection.immutable.List['Types.TypeApi']) -> 'Types.TypeApi': ...
        def takesTypeArgs(self) -> bool: ...
        def termSymbol(self) -> 'Symbols.SymbolApi': ...
        def typeArgs(self) -> scala.collection.immutable.List['Types.TypeApi']: ...
        def typeConstructor(self) -> 'Types.TypeApi': ...
        def typeParams(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def typeSymbol(self) -> 'Symbols.SymbolApi': ...
        def weak_$less$colon$less(self, that: 'Types.TypeApi') -> bool: ...
        def widen(self) -> 'Types.TypeApi': ...
    class TypeBoundsApi:
        def hi(self) -> 'Types.TypeApi': ...
        def lo(self) -> 'Types.TypeApi': ...
    class TypeBoundsExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, lo: 'Types.TypeApi', hi: 'Types.TypeApi', token: 'Internals.CompatToken') -> 'Types.TypeBoundsApi': ...
        def unapply(self, tpe: 'Types.TypeBoundsApi') -> scala.Option[scala.Tuple2['Types.TypeApi', 'Types.TypeApi']]: ...
    class TypeRefApi:
        def args(self) -> scala.collection.immutable.List['Types.TypeApi']: ...
        def pre(self) -> 'Types.TypeApi': ...
        def sym(self) -> 'Symbols.SymbolApi': ...
    class TypeRefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, pre: 'Types.TypeApi', sym: 'Symbols.SymbolApi', args: scala.collection.immutable.List['Types.TypeApi'], token: 'Internals.CompatToken') -> 'Types.TypeApi': ...
        def unapply(self, tpe: 'Types.TypeRefApi') -> scala.Option[scala.Tuple3['Types.TypeApi', 'Symbols.SymbolApi', scala.collection.immutable.List['Types.TypeApi']]]: ...

class package: ...

_Liftables__Liftable__T = typing.TypeVar('_Liftables__Liftable__T')  # <T>
_Liftables__Unliftable__T = typing.TypeVar('_Liftables__Unliftable__T')  # <T>
class Liftables:
    @staticmethod
    def $init$($this: 'Liftables') -> None: ...
    class Liftable(typing.Generic[_Liftables__Liftable__T]):
        def apply(self, value: _Liftables__Liftable__T) -> 'Trees.TreeApi': ...
    class Liftable$(StandardLiftables.StandardLiftableInstances):
        def __init__(self, $outer: 'Universe'): ...
        _apply__T = typing.TypeVar('_apply__T')  # <T>
        def apply(self, f: scala.Function1[_apply__T, 'Trees.TreeApi']) -> 'Liftables.Liftable'[_apply__T]: ...
        _liftArray__T = typing.TypeVar('_liftArray__T')  # <T>
        def liftArray(self, evidence$2: 'Liftables.Liftable'[_liftArray__T]) -> 'Liftables.Liftable'[typing.Any]: ...
        _liftBoolean__T = typing.TypeVar('_liftBoolean__T')  # <T>
        def liftBoolean(self) -> 'Liftables.Liftable'[_liftBoolean__T]: ...
        _liftByte__T = typing.TypeVar('_liftByte__T')  # <T>
        def liftByte(self) -> 'Liftables.Liftable'[_liftByte__T]: ...
        _liftChar__T = typing.TypeVar('_liftChar__T')  # <T>
        def liftChar(self) -> 'Liftables.Liftable'[_liftChar__T]: ...
        _liftConstant__T = typing.TypeVar('_liftConstant__T', bound=Constants.ConstantApi)  # <T>
        def liftConstant(self) -> 'Liftables.Liftable'[_liftConstant__T]: ...
        _liftDouble__T = typing.TypeVar('_liftDouble__T')  # <T>
        def liftDouble(self) -> 'Liftables.Liftable'[_liftDouble__T]: ...
        _liftEither__L = typing.TypeVar('_liftEither__L')  # <L>
        _liftEither__R = typing.TypeVar('_liftEither__R')  # <R>
        def liftEither(self, evidence$12: 'Liftables.Liftable'[_liftEither__L], evidence$13: 'Liftables.Liftable'[_liftEither__R]) -> 'Liftables.Liftable'[scala.util.Either[_liftEither__L, _liftEither__R]]: ...
        _liftExpr__T = typing.TypeVar('_liftExpr__T', bound='Exprs.Expr')  # <T>
        def liftExpr(self) -> 'Liftables.Liftable'[_liftExpr__T]: ...
        _liftFloat__T = typing.TypeVar('_liftFloat__T')  # <T>
        def liftFloat(self) -> 'Liftables.Liftable'[_liftFloat__T]: ...
        _liftInt__T = typing.TypeVar('_liftInt__T')  # <T>
        def liftInt(self) -> 'Liftables.Liftable'[_liftInt__T]: ...
        _liftLeft__L = typing.TypeVar('_liftLeft__L')  # <L>
        _liftLeft__R = typing.TypeVar('_liftLeft__R')  # <R>
        def liftLeft(self, evidence$10: 'Liftables.Liftable'[_liftLeft__L]) -> 'Liftables.Liftable'[scala.util.Left[_liftLeft__L, _liftLeft__R]]: ...
        _liftList__T = typing.TypeVar('_liftList__T')  # <T>
        def liftList(self, evidence$4: 'Liftables.Liftable'[_liftList__T]) -> 'Liftables.Liftable'[scala.collection.immutable.List[_liftList__T]]: ...
        _liftLong__T = typing.TypeVar('_liftLong__T')  # <T>
        def liftLong(self) -> 'Liftables.Liftable'[_liftLong__T]: ...
        _liftMap__K = typing.TypeVar('_liftMap__K')  # <K>
        _liftMap__V = typing.TypeVar('_liftMap__V')  # <V>
        def liftMap(self, evidence$5: 'Liftables.Liftable'[_liftMap__K], evidence$6: 'Liftables.Liftable'[_liftMap__V]) -> 'Liftables.Liftable'[scala.collection.immutable.Map[_liftMap__K, _liftMap__V]]: ...
        _liftName__T = typing.TypeVar('_liftName__T', bound=Names.NameApi)  # <T>
        def liftName(self) -> 'Liftables.Liftable'[_liftName__T]: ...
        def liftNil(self) -> 'Liftables.Liftable'[scala.collection.immutable.Nil.]: ...
        def liftNone(self) -> 'Liftables.Liftable'[scala.None.]: ...
        _liftOption__T = typing.TypeVar('_liftOption__T')  # <T>
        def liftOption(self, evidence$9: 'Liftables.Liftable'[_liftOption__T]) -> 'Liftables.Liftable'[scala.Option[_liftOption__T]]: ...
        _liftRight__L = typing.TypeVar('_liftRight__L')  # <L>
        _liftRight__R = typing.TypeVar('_liftRight__R')  # <R>
        def liftRight(self, evidence$11: 'Liftables.Liftable'[_liftRight__R]) -> 'Liftables.Liftable'[scala.util.Right[_liftRight__L, _liftRight__R]]: ...
        def liftScalaSymbol(self) -> 'Liftables.Liftable'[scala.Symbol]: ...
        _liftSet__T = typing.TypeVar('_liftSet__T')  # <T>
        def liftSet(self, evidence$7: 'Liftables.Liftable'[_liftSet__T]) -> 'Liftables.Liftable'[scala.collection.immutable.Set[_liftSet__T]]: ...
        _liftShort__T = typing.TypeVar('_liftShort__T')  # <T>
        def liftShort(self) -> 'Liftables.Liftable'[_liftShort__T]: ...
        _liftSome__T = typing.TypeVar('_liftSome__T')  # <T>
        def liftSome(self, evidence$8: 'Liftables.Liftable'[_liftSome__T]) -> 'Liftables.Liftable'[scala.Some[_liftSome__T]]: ...
        _liftString__T = typing.TypeVar('_liftString__T', bound=java.lang.String)  # <T>
        def liftString(self) -> 'Liftables.Liftable'[_liftString__T]: ...
        _liftTree__T = typing.TypeVar('_liftTree__T', bound='Trees.TreeApi')  # <T>
        def liftTree(self) -> 'Liftables.Liftable'[_liftTree__T]: ...
        _liftTuple10__T1 = typing.TypeVar('_liftTuple10__T1')  # <T1>
        _liftTuple10__T2 = typing.TypeVar('_liftTuple10__T2')  # <T2>
        _liftTuple10__T3 = typing.TypeVar('_liftTuple10__T3')  # <T3>
        _liftTuple10__T4 = typing.TypeVar('_liftTuple10__T4')  # <T4>
        _liftTuple10__T5 = typing.TypeVar('_liftTuple10__T5')  # <T5>
        _liftTuple10__T6 = typing.TypeVar('_liftTuple10__T6')  # <T6>
        _liftTuple10__T7 = typing.TypeVar('_liftTuple10__T7')  # <T7>
        _liftTuple10__T8 = typing.TypeVar('_liftTuple10__T8')  # <T8>
        _liftTuple10__T9 = typing.TypeVar('_liftTuple10__T9')  # <T9>
        _liftTuple10__T10 = typing.TypeVar('_liftTuple10__T10')  # <T10>
        def liftTuple10(self, liftT1: 'Liftables.Liftable'[_liftTuple10__T1], liftT2: 'Liftables.Liftable'[_liftTuple10__T2], liftT3: 'Liftables.Liftable'[_liftTuple10__T3], liftT4: 'Liftables.Liftable'[_liftTuple10__T4], liftT5: 'Liftables.Liftable'[_liftTuple10__T5], liftT6: 'Liftables.Liftable'[_liftTuple10__T6], liftT7: 'Liftables.Liftable'[_liftTuple10__T7], liftT8: 'Liftables.Liftable'[_liftTuple10__T8], liftT9: 'Liftables.Liftable'[_liftTuple10__T9], liftT10: 'Liftables.Liftable'[_liftTuple10__T10]) -> 'Liftables.Liftable'[scala.Tuple10[_liftTuple10__T1, _liftTuple10__T2, _liftTuple10__T3, _liftTuple10__T4, _liftTuple10__T5, _liftTuple10__T6, _liftTuple10__T7, _liftTuple10__T8, _liftTuple10__T9, _liftTuple10__T10]]: ...
        _liftTuple11__T1 = typing.TypeVar('_liftTuple11__T1')  # <T1>
        _liftTuple11__T2 = typing.TypeVar('_liftTuple11__T2')  # <T2>
        _liftTuple11__T3 = typing.TypeVar('_liftTuple11__T3')  # <T3>
        _liftTuple11__T4 = typing.TypeVar('_liftTuple11__T4')  # <T4>
        _liftTuple11__T5 = typing.TypeVar('_liftTuple11__T5')  # <T5>
        _liftTuple11__T6 = typing.TypeVar('_liftTuple11__T6')  # <T6>
        _liftTuple11__T7 = typing.TypeVar('_liftTuple11__T7')  # <T7>
        _liftTuple11__T8 = typing.TypeVar('_liftTuple11__T8')  # <T8>
        _liftTuple11__T9 = typing.TypeVar('_liftTuple11__T9')  # <T9>
        _liftTuple11__T10 = typing.TypeVar('_liftTuple11__T10')  # <T10>
        _liftTuple11__T11 = typing.TypeVar('_liftTuple11__T11')  # <T11>
        def liftTuple11(self, liftT1: 'Liftables.Liftable'[_liftTuple11__T1], liftT2: 'Liftables.Liftable'[_liftTuple11__T2], liftT3: 'Liftables.Liftable'[_liftTuple11__T3], liftT4: 'Liftables.Liftable'[_liftTuple11__T4], liftT5: 'Liftables.Liftable'[_liftTuple11__T5], liftT6: 'Liftables.Liftable'[_liftTuple11__T6], liftT7: 'Liftables.Liftable'[_liftTuple11__T7], liftT8: 'Liftables.Liftable'[_liftTuple11__T8], liftT9: 'Liftables.Liftable'[_liftTuple11__T9], liftT10: 'Liftables.Liftable'[_liftTuple11__T10], liftT11: 'Liftables.Liftable'[_liftTuple11__T11]) -> 'Liftables.Liftable'[scala.Tuple11[_liftTuple11__T1, _liftTuple11__T2, _liftTuple11__T3, _liftTuple11__T4, _liftTuple11__T5, _liftTuple11__T6, _liftTuple11__T7, _liftTuple11__T8, _liftTuple11__T9, _liftTuple11__T10, _liftTuple11__T11]]: ...
        _liftTuple12__T1 = typing.TypeVar('_liftTuple12__T1')  # <T1>
        _liftTuple12__T2 = typing.TypeVar('_liftTuple12__T2')  # <T2>
        _liftTuple12__T3 = typing.TypeVar('_liftTuple12__T3')  # <T3>
        _liftTuple12__T4 = typing.TypeVar('_liftTuple12__T4')  # <T4>
        _liftTuple12__T5 = typing.TypeVar('_liftTuple12__T5')  # <T5>
        _liftTuple12__T6 = typing.TypeVar('_liftTuple12__T6')  # <T6>
        _liftTuple12__T7 = typing.TypeVar('_liftTuple12__T7')  # <T7>
        _liftTuple12__T8 = typing.TypeVar('_liftTuple12__T8')  # <T8>
        _liftTuple12__T9 = typing.TypeVar('_liftTuple12__T9')  # <T9>
        _liftTuple12__T10 = typing.TypeVar('_liftTuple12__T10')  # <T10>
        _liftTuple12__T11 = typing.TypeVar('_liftTuple12__T11')  # <T11>
        _liftTuple12__T12 = typing.TypeVar('_liftTuple12__T12')  # <T12>
        def liftTuple12(self, liftT1: 'Liftables.Liftable'[_liftTuple12__T1], liftT2: 'Liftables.Liftable'[_liftTuple12__T2], liftT3: 'Liftables.Liftable'[_liftTuple12__T3], liftT4: 'Liftables.Liftable'[_liftTuple12__T4], liftT5: 'Liftables.Liftable'[_liftTuple12__T5], liftT6: 'Liftables.Liftable'[_liftTuple12__T6], liftT7: 'Liftables.Liftable'[_liftTuple12__T7], liftT8: 'Liftables.Liftable'[_liftTuple12__T8], liftT9: 'Liftables.Liftable'[_liftTuple12__T9], liftT10: 'Liftables.Liftable'[_liftTuple12__T10], liftT11: 'Liftables.Liftable'[_liftTuple12__T11], liftT12: 'Liftables.Liftable'[_liftTuple12__T12]) -> 'Liftables.Liftable'[scala.Tuple12[_liftTuple12__T1, _liftTuple12__T2, _liftTuple12__T3, _liftTuple12__T4, _liftTuple12__T5, _liftTuple12__T6, _liftTuple12__T7, _liftTuple12__T8, _liftTuple12__T9, _liftTuple12__T10, _liftTuple12__T11, _liftTuple12__T12]]: ...
        _liftTuple13__T1 = typing.TypeVar('_liftTuple13__T1')  # <T1>
        _liftTuple13__T2 = typing.TypeVar('_liftTuple13__T2')  # <T2>
        _liftTuple13__T3 = typing.TypeVar('_liftTuple13__T3')  # <T3>
        _liftTuple13__T4 = typing.TypeVar('_liftTuple13__T4')  # <T4>
        _liftTuple13__T5 = typing.TypeVar('_liftTuple13__T5')  # <T5>
        _liftTuple13__T6 = typing.TypeVar('_liftTuple13__T6')  # <T6>
        _liftTuple13__T7 = typing.TypeVar('_liftTuple13__T7')  # <T7>
        _liftTuple13__T8 = typing.TypeVar('_liftTuple13__T8')  # <T8>
        _liftTuple13__T9 = typing.TypeVar('_liftTuple13__T9')  # <T9>
        _liftTuple13__T10 = typing.TypeVar('_liftTuple13__T10')  # <T10>
        _liftTuple13__T11 = typing.TypeVar('_liftTuple13__T11')  # <T11>
        _liftTuple13__T12 = typing.TypeVar('_liftTuple13__T12')  # <T12>
        _liftTuple13__T13 = typing.TypeVar('_liftTuple13__T13')  # <T13>
        def liftTuple13(self, liftT1: 'Liftables.Liftable'[_liftTuple13__T1], liftT2: 'Liftables.Liftable'[_liftTuple13__T2], liftT3: 'Liftables.Liftable'[_liftTuple13__T3], liftT4: 'Liftables.Liftable'[_liftTuple13__T4], liftT5: 'Liftables.Liftable'[_liftTuple13__T5], liftT6: 'Liftables.Liftable'[_liftTuple13__T6], liftT7: 'Liftables.Liftable'[_liftTuple13__T7], liftT8: 'Liftables.Liftable'[_liftTuple13__T8], liftT9: 'Liftables.Liftable'[_liftTuple13__T9], liftT10: 'Liftables.Liftable'[_liftTuple13__T10], liftT11: 'Liftables.Liftable'[_liftTuple13__T11], liftT12: 'Liftables.Liftable'[_liftTuple13__T12], liftT13: 'Liftables.Liftable'[_liftTuple13__T13]) -> 'Liftables.Liftable'[scala.Tuple13[_liftTuple13__T1, _liftTuple13__T2, _liftTuple13__T3, _liftTuple13__T4, _liftTuple13__T5, _liftTuple13__T6, _liftTuple13__T7, _liftTuple13__T8, _liftTuple13__T9, _liftTuple13__T10, _liftTuple13__T11, _liftTuple13__T12, _liftTuple13__T13]]: ...
        _liftTuple14__T1 = typing.TypeVar('_liftTuple14__T1')  # <T1>
        _liftTuple14__T2 = typing.TypeVar('_liftTuple14__T2')  # <T2>
        _liftTuple14__T3 = typing.TypeVar('_liftTuple14__T3')  # <T3>
        _liftTuple14__T4 = typing.TypeVar('_liftTuple14__T4')  # <T4>
        _liftTuple14__T5 = typing.TypeVar('_liftTuple14__T5')  # <T5>
        _liftTuple14__T6 = typing.TypeVar('_liftTuple14__T6')  # <T6>
        _liftTuple14__T7 = typing.TypeVar('_liftTuple14__T7')  # <T7>
        _liftTuple14__T8 = typing.TypeVar('_liftTuple14__T8')  # <T8>
        _liftTuple14__T9 = typing.TypeVar('_liftTuple14__T9')  # <T9>
        _liftTuple14__T10 = typing.TypeVar('_liftTuple14__T10')  # <T10>
        _liftTuple14__T11 = typing.TypeVar('_liftTuple14__T11')  # <T11>
        _liftTuple14__T12 = typing.TypeVar('_liftTuple14__T12')  # <T12>
        _liftTuple14__T13 = typing.TypeVar('_liftTuple14__T13')  # <T13>
        _liftTuple14__T14 = typing.TypeVar('_liftTuple14__T14')  # <T14>
        def liftTuple14(self, liftT1: 'Liftables.Liftable'[_liftTuple14__T1], liftT2: 'Liftables.Liftable'[_liftTuple14__T2], liftT3: 'Liftables.Liftable'[_liftTuple14__T3], liftT4: 'Liftables.Liftable'[_liftTuple14__T4], liftT5: 'Liftables.Liftable'[_liftTuple14__T5], liftT6: 'Liftables.Liftable'[_liftTuple14__T6], liftT7: 'Liftables.Liftable'[_liftTuple14__T7], liftT8: 'Liftables.Liftable'[_liftTuple14__T8], liftT9: 'Liftables.Liftable'[_liftTuple14__T9], liftT10: 'Liftables.Liftable'[_liftTuple14__T10], liftT11: 'Liftables.Liftable'[_liftTuple14__T11], liftT12: 'Liftables.Liftable'[_liftTuple14__T12], liftT13: 'Liftables.Liftable'[_liftTuple14__T13], liftT14: 'Liftables.Liftable'[_liftTuple14__T14]) -> 'Liftables.Liftable'[scala.Tuple14[_liftTuple14__T1, _liftTuple14__T2, _liftTuple14__T3, _liftTuple14__T4, _liftTuple14__T5, _liftTuple14__T6, _liftTuple14__T7, _liftTuple14__T8, _liftTuple14__T9, _liftTuple14__T10, _liftTuple14__T11, _liftTuple14__T12, _liftTuple14__T13, _liftTuple14__T14]]: ...
        _liftTuple15__T1 = typing.TypeVar('_liftTuple15__T1')  # <T1>
        _liftTuple15__T2 = typing.TypeVar('_liftTuple15__T2')  # <T2>
        _liftTuple15__T3 = typing.TypeVar('_liftTuple15__T3')  # <T3>
        _liftTuple15__T4 = typing.TypeVar('_liftTuple15__T4')  # <T4>
        _liftTuple15__T5 = typing.TypeVar('_liftTuple15__T5')  # <T5>
        _liftTuple15__T6 = typing.TypeVar('_liftTuple15__T6')  # <T6>
        _liftTuple15__T7 = typing.TypeVar('_liftTuple15__T7')  # <T7>
        _liftTuple15__T8 = typing.TypeVar('_liftTuple15__T8')  # <T8>
        _liftTuple15__T9 = typing.TypeVar('_liftTuple15__T9')  # <T9>
        _liftTuple15__T10 = typing.TypeVar('_liftTuple15__T10')  # <T10>
        _liftTuple15__T11 = typing.TypeVar('_liftTuple15__T11')  # <T11>
        _liftTuple15__T12 = typing.TypeVar('_liftTuple15__T12')  # <T12>
        _liftTuple15__T13 = typing.TypeVar('_liftTuple15__T13')  # <T13>
        _liftTuple15__T14 = typing.TypeVar('_liftTuple15__T14')  # <T14>
        _liftTuple15__T15 = typing.TypeVar('_liftTuple15__T15')  # <T15>
        def liftTuple15(self, liftT1: 'Liftables.Liftable'[_liftTuple15__T1], liftT2: 'Liftables.Liftable'[_liftTuple15__T2], liftT3: 'Liftables.Liftable'[_liftTuple15__T3], liftT4: 'Liftables.Liftable'[_liftTuple15__T4], liftT5: 'Liftables.Liftable'[_liftTuple15__T5], liftT6: 'Liftables.Liftable'[_liftTuple15__T6], liftT7: 'Liftables.Liftable'[_liftTuple15__T7], liftT8: 'Liftables.Liftable'[_liftTuple15__T8], liftT9: 'Liftables.Liftable'[_liftTuple15__T9], liftT10: 'Liftables.Liftable'[_liftTuple15__T10], liftT11: 'Liftables.Liftable'[_liftTuple15__T11], liftT12: 'Liftables.Liftable'[_liftTuple15__T12], liftT13: 'Liftables.Liftable'[_liftTuple15__T13], liftT14: 'Liftables.Liftable'[_liftTuple15__T14], liftT15: 'Liftables.Liftable'[_liftTuple15__T15]) -> 'Liftables.Liftable'[scala.Tuple15[_liftTuple15__T1, _liftTuple15__T2, _liftTuple15__T3, _liftTuple15__T4, _liftTuple15__T5, _liftTuple15__T6, _liftTuple15__T7, _liftTuple15__T8, _liftTuple15__T9, _liftTuple15__T10, _liftTuple15__T11, _liftTuple15__T12, _liftTuple15__T13, _liftTuple15__T14, _liftTuple15__T15]]: ...
        _liftTuple16__T1 = typing.TypeVar('_liftTuple16__T1')  # <T1>
        _liftTuple16__T2 = typing.TypeVar('_liftTuple16__T2')  # <T2>
        _liftTuple16__T3 = typing.TypeVar('_liftTuple16__T3')  # <T3>
        _liftTuple16__T4 = typing.TypeVar('_liftTuple16__T4')  # <T4>
        _liftTuple16__T5 = typing.TypeVar('_liftTuple16__T5')  # <T5>
        _liftTuple16__T6 = typing.TypeVar('_liftTuple16__T6')  # <T6>
        _liftTuple16__T7 = typing.TypeVar('_liftTuple16__T7')  # <T7>
        _liftTuple16__T8 = typing.TypeVar('_liftTuple16__T8')  # <T8>
        _liftTuple16__T9 = typing.TypeVar('_liftTuple16__T9')  # <T9>
        _liftTuple16__T10 = typing.TypeVar('_liftTuple16__T10')  # <T10>
        _liftTuple16__T11 = typing.TypeVar('_liftTuple16__T11')  # <T11>
        _liftTuple16__T12 = typing.TypeVar('_liftTuple16__T12')  # <T12>
        _liftTuple16__T13 = typing.TypeVar('_liftTuple16__T13')  # <T13>
        _liftTuple16__T14 = typing.TypeVar('_liftTuple16__T14')  # <T14>
        _liftTuple16__T15 = typing.TypeVar('_liftTuple16__T15')  # <T15>
        _liftTuple16__T16 = typing.TypeVar('_liftTuple16__T16')  # <T16>
        def liftTuple16(self, liftT1: 'Liftables.Liftable'[_liftTuple16__T1], liftT2: 'Liftables.Liftable'[_liftTuple16__T2], liftT3: 'Liftables.Liftable'[_liftTuple16__T3], liftT4: 'Liftables.Liftable'[_liftTuple16__T4], liftT5: 'Liftables.Liftable'[_liftTuple16__T5], liftT6: 'Liftables.Liftable'[_liftTuple16__T6], liftT7: 'Liftables.Liftable'[_liftTuple16__T7], liftT8: 'Liftables.Liftable'[_liftTuple16__T8], liftT9: 'Liftables.Liftable'[_liftTuple16__T9], liftT10: 'Liftables.Liftable'[_liftTuple16__T10], liftT11: 'Liftables.Liftable'[_liftTuple16__T11], liftT12: 'Liftables.Liftable'[_liftTuple16__T12], liftT13: 'Liftables.Liftable'[_liftTuple16__T13], liftT14: 'Liftables.Liftable'[_liftTuple16__T14], liftT15: 'Liftables.Liftable'[_liftTuple16__T15], liftT16: 'Liftables.Liftable'[_liftTuple16__T16]) -> 'Liftables.Liftable'[scala.Tuple16[_liftTuple16__T1, _liftTuple16__T2, _liftTuple16__T3, _liftTuple16__T4, _liftTuple16__T5, _liftTuple16__T6, _liftTuple16__T7, _liftTuple16__T8, _liftTuple16__T9, _liftTuple16__T10, _liftTuple16__T11, _liftTuple16__T12, _liftTuple16__T13, _liftTuple16__T14, _liftTuple16__T15, _liftTuple16__T16]]: ...
        _liftTuple17__T1 = typing.TypeVar('_liftTuple17__T1')  # <T1>
        _liftTuple17__T2 = typing.TypeVar('_liftTuple17__T2')  # <T2>
        _liftTuple17__T3 = typing.TypeVar('_liftTuple17__T3')  # <T3>
        _liftTuple17__T4 = typing.TypeVar('_liftTuple17__T4')  # <T4>
        _liftTuple17__T5 = typing.TypeVar('_liftTuple17__T5')  # <T5>
        _liftTuple17__T6 = typing.TypeVar('_liftTuple17__T6')  # <T6>
        _liftTuple17__T7 = typing.TypeVar('_liftTuple17__T7')  # <T7>
        _liftTuple17__T8 = typing.TypeVar('_liftTuple17__T8')  # <T8>
        _liftTuple17__T9 = typing.TypeVar('_liftTuple17__T9')  # <T9>
        _liftTuple17__T10 = typing.TypeVar('_liftTuple17__T10')  # <T10>
        _liftTuple17__T11 = typing.TypeVar('_liftTuple17__T11')  # <T11>
        _liftTuple17__T12 = typing.TypeVar('_liftTuple17__T12')  # <T12>
        _liftTuple17__T13 = typing.TypeVar('_liftTuple17__T13')  # <T13>
        _liftTuple17__T14 = typing.TypeVar('_liftTuple17__T14')  # <T14>
        _liftTuple17__T15 = typing.TypeVar('_liftTuple17__T15')  # <T15>
        _liftTuple17__T16 = typing.TypeVar('_liftTuple17__T16')  # <T16>
        _liftTuple17__T17 = typing.TypeVar('_liftTuple17__T17')  # <T17>
        def liftTuple17(self, liftT1: 'Liftables.Liftable'[_liftTuple17__T1], liftT2: 'Liftables.Liftable'[_liftTuple17__T2], liftT3: 'Liftables.Liftable'[_liftTuple17__T3], liftT4: 'Liftables.Liftable'[_liftTuple17__T4], liftT5: 'Liftables.Liftable'[_liftTuple17__T5], liftT6: 'Liftables.Liftable'[_liftTuple17__T6], liftT7: 'Liftables.Liftable'[_liftTuple17__T7], liftT8: 'Liftables.Liftable'[_liftTuple17__T8], liftT9: 'Liftables.Liftable'[_liftTuple17__T9], liftT10: 'Liftables.Liftable'[_liftTuple17__T10], liftT11: 'Liftables.Liftable'[_liftTuple17__T11], liftT12: 'Liftables.Liftable'[_liftTuple17__T12], liftT13: 'Liftables.Liftable'[_liftTuple17__T13], liftT14: 'Liftables.Liftable'[_liftTuple17__T14], liftT15: 'Liftables.Liftable'[_liftTuple17__T15], liftT16: 'Liftables.Liftable'[_liftTuple17__T16], liftT17: 'Liftables.Liftable'[_liftTuple17__T17]) -> 'Liftables.Liftable'[scala.Tuple17[_liftTuple17__T1, _liftTuple17__T2, _liftTuple17__T3, _liftTuple17__T4, _liftTuple17__T5, _liftTuple17__T6, _liftTuple17__T7, _liftTuple17__T8, _liftTuple17__T9, _liftTuple17__T10, _liftTuple17__T11, _liftTuple17__T12, _liftTuple17__T13, _liftTuple17__T14, _liftTuple17__T15, _liftTuple17__T16, _liftTuple17__T17]]: ...
        _liftTuple18__T1 = typing.TypeVar('_liftTuple18__T1')  # <T1>
        _liftTuple18__T2 = typing.TypeVar('_liftTuple18__T2')  # <T2>
        _liftTuple18__T3 = typing.TypeVar('_liftTuple18__T3')  # <T3>
        _liftTuple18__T4 = typing.TypeVar('_liftTuple18__T4')  # <T4>
        _liftTuple18__T5 = typing.TypeVar('_liftTuple18__T5')  # <T5>
        _liftTuple18__T6 = typing.TypeVar('_liftTuple18__T6')  # <T6>
        _liftTuple18__T7 = typing.TypeVar('_liftTuple18__T7')  # <T7>
        _liftTuple18__T8 = typing.TypeVar('_liftTuple18__T8')  # <T8>
        _liftTuple18__T9 = typing.TypeVar('_liftTuple18__T9')  # <T9>
        _liftTuple18__T10 = typing.TypeVar('_liftTuple18__T10')  # <T10>
        _liftTuple18__T11 = typing.TypeVar('_liftTuple18__T11')  # <T11>
        _liftTuple18__T12 = typing.TypeVar('_liftTuple18__T12')  # <T12>
        _liftTuple18__T13 = typing.TypeVar('_liftTuple18__T13')  # <T13>
        _liftTuple18__T14 = typing.TypeVar('_liftTuple18__T14')  # <T14>
        _liftTuple18__T15 = typing.TypeVar('_liftTuple18__T15')  # <T15>
        _liftTuple18__T16 = typing.TypeVar('_liftTuple18__T16')  # <T16>
        _liftTuple18__T17 = typing.TypeVar('_liftTuple18__T17')  # <T17>
        _liftTuple18__T18 = typing.TypeVar('_liftTuple18__T18')  # <T18>
        def liftTuple18(self, liftT1: 'Liftables.Liftable'[_liftTuple18__T1], liftT2: 'Liftables.Liftable'[_liftTuple18__T2], liftT3: 'Liftables.Liftable'[_liftTuple18__T3], liftT4: 'Liftables.Liftable'[_liftTuple18__T4], liftT5: 'Liftables.Liftable'[_liftTuple18__T5], liftT6: 'Liftables.Liftable'[_liftTuple18__T6], liftT7: 'Liftables.Liftable'[_liftTuple18__T7], liftT8: 'Liftables.Liftable'[_liftTuple18__T8], liftT9: 'Liftables.Liftable'[_liftTuple18__T9], liftT10: 'Liftables.Liftable'[_liftTuple18__T10], liftT11: 'Liftables.Liftable'[_liftTuple18__T11], liftT12: 'Liftables.Liftable'[_liftTuple18__T12], liftT13: 'Liftables.Liftable'[_liftTuple18__T13], liftT14: 'Liftables.Liftable'[_liftTuple18__T14], liftT15: 'Liftables.Liftable'[_liftTuple18__T15], liftT16: 'Liftables.Liftable'[_liftTuple18__T16], liftT17: 'Liftables.Liftable'[_liftTuple18__T17], liftT18: 'Liftables.Liftable'[_liftTuple18__T18]) -> 'Liftables.Liftable'[scala.Tuple18[_liftTuple18__T1, _liftTuple18__T2, _liftTuple18__T3, _liftTuple18__T4, _liftTuple18__T5, _liftTuple18__T6, _liftTuple18__T7, _liftTuple18__T8, _liftTuple18__T9, _liftTuple18__T10, _liftTuple18__T11, _liftTuple18__T12, _liftTuple18__T13, _liftTuple18__T14, _liftTuple18__T15, _liftTuple18__T16, _liftTuple18__T17, _liftTuple18__T18]]: ...
        _liftTuple19__T1 = typing.TypeVar('_liftTuple19__T1')  # <T1>
        _liftTuple19__T2 = typing.TypeVar('_liftTuple19__T2')  # <T2>
        _liftTuple19__T3 = typing.TypeVar('_liftTuple19__T3')  # <T3>
        _liftTuple19__T4 = typing.TypeVar('_liftTuple19__T4')  # <T4>
        _liftTuple19__T5 = typing.TypeVar('_liftTuple19__T5')  # <T5>
        _liftTuple19__T6 = typing.TypeVar('_liftTuple19__T6')  # <T6>
        _liftTuple19__T7 = typing.TypeVar('_liftTuple19__T7')  # <T7>
        _liftTuple19__T8 = typing.TypeVar('_liftTuple19__T8')  # <T8>
        _liftTuple19__T9 = typing.TypeVar('_liftTuple19__T9')  # <T9>
        _liftTuple19__T10 = typing.TypeVar('_liftTuple19__T10')  # <T10>
        _liftTuple19__T11 = typing.TypeVar('_liftTuple19__T11')  # <T11>
        _liftTuple19__T12 = typing.TypeVar('_liftTuple19__T12')  # <T12>
        _liftTuple19__T13 = typing.TypeVar('_liftTuple19__T13')  # <T13>
        _liftTuple19__T14 = typing.TypeVar('_liftTuple19__T14')  # <T14>
        _liftTuple19__T15 = typing.TypeVar('_liftTuple19__T15')  # <T15>
        _liftTuple19__T16 = typing.TypeVar('_liftTuple19__T16')  # <T16>
        _liftTuple19__T17 = typing.TypeVar('_liftTuple19__T17')  # <T17>
        _liftTuple19__T18 = typing.TypeVar('_liftTuple19__T18')  # <T18>
        _liftTuple19__T19 = typing.TypeVar('_liftTuple19__T19')  # <T19>
        def liftTuple19(self, liftT1: 'Liftables.Liftable'[_liftTuple19__T1], liftT2: 'Liftables.Liftable'[_liftTuple19__T2], liftT3: 'Liftables.Liftable'[_liftTuple19__T3], liftT4: 'Liftables.Liftable'[_liftTuple19__T4], liftT5: 'Liftables.Liftable'[_liftTuple19__T5], liftT6: 'Liftables.Liftable'[_liftTuple19__T6], liftT7: 'Liftables.Liftable'[_liftTuple19__T7], liftT8: 'Liftables.Liftable'[_liftTuple19__T8], liftT9: 'Liftables.Liftable'[_liftTuple19__T9], liftT10: 'Liftables.Liftable'[_liftTuple19__T10], liftT11: 'Liftables.Liftable'[_liftTuple19__T11], liftT12: 'Liftables.Liftable'[_liftTuple19__T12], liftT13: 'Liftables.Liftable'[_liftTuple19__T13], liftT14: 'Liftables.Liftable'[_liftTuple19__T14], liftT15: 'Liftables.Liftable'[_liftTuple19__T15], liftT16: 'Liftables.Liftable'[_liftTuple19__T16], liftT17: 'Liftables.Liftable'[_liftTuple19__T17], liftT18: 'Liftables.Liftable'[_liftTuple19__T18], liftT19: 'Liftables.Liftable'[_liftTuple19__T19]) -> 'Liftables.Liftable'[scala.Tuple19[_liftTuple19__T1, _liftTuple19__T2, _liftTuple19__T3, _liftTuple19__T4, _liftTuple19__T5, _liftTuple19__T6, _liftTuple19__T7, _liftTuple19__T8, _liftTuple19__T9, _liftTuple19__T10, _liftTuple19__T11, _liftTuple19__T12, _liftTuple19__T13, _liftTuple19__T14, _liftTuple19__T15, _liftTuple19__T16, _liftTuple19__T17, _liftTuple19__T18, _liftTuple19__T19]]: ...
        _liftTuple2__T1 = typing.TypeVar('_liftTuple2__T1')  # <T1>
        _liftTuple2__T2 = typing.TypeVar('_liftTuple2__T2')  # <T2>
        def liftTuple2(self, liftT1: 'Liftables.Liftable'[_liftTuple2__T1], liftT2: 'Liftables.Liftable'[_liftTuple2__T2]) -> 'Liftables.Liftable'[scala.Tuple2[_liftTuple2__T1, _liftTuple2__T2]]: ...
        _liftTuple20__T1 = typing.TypeVar('_liftTuple20__T1')  # <T1>
        _liftTuple20__T2 = typing.TypeVar('_liftTuple20__T2')  # <T2>
        _liftTuple20__T3 = typing.TypeVar('_liftTuple20__T3')  # <T3>
        _liftTuple20__T4 = typing.TypeVar('_liftTuple20__T4')  # <T4>
        _liftTuple20__T5 = typing.TypeVar('_liftTuple20__T5')  # <T5>
        _liftTuple20__T6 = typing.TypeVar('_liftTuple20__T6')  # <T6>
        _liftTuple20__T7 = typing.TypeVar('_liftTuple20__T7')  # <T7>
        _liftTuple20__T8 = typing.TypeVar('_liftTuple20__T8')  # <T8>
        _liftTuple20__T9 = typing.TypeVar('_liftTuple20__T9')  # <T9>
        _liftTuple20__T10 = typing.TypeVar('_liftTuple20__T10')  # <T10>
        _liftTuple20__T11 = typing.TypeVar('_liftTuple20__T11')  # <T11>
        _liftTuple20__T12 = typing.TypeVar('_liftTuple20__T12')  # <T12>
        _liftTuple20__T13 = typing.TypeVar('_liftTuple20__T13')  # <T13>
        _liftTuple20__T14 = typing.TypeVar('_liftTuple20__T14')  # <T14>
        _liftTuple20__T15 = typing.TypeVar('_liftTuple20__T15')  # <T15>
        _liftTuple20__T16 = typing.TypeVar('_liftTuple20__T16')  # <T16>
        _liftTuple20__T17 = typing.TypeVar('_liftTuple20__T17')  # <T17>
        _liftTuple20__T18 = typing.TypeVar('_liftTuple20__T18')  # <T18>
        _liftTuple20__T19 = typing.TypeVar('_liftTuple20__T19')  # <T19>
        _liftTuple20__T20 = typing.TypeVar('_liftTuple20__T20')  # <T20>
        def liftTuple20(self, liftT1: 'Liftables.Liftable'[_liftTuple20__T1], liftT2: 'Liftables.Liftable'[_liftTuple20__T2], liftT3: 'Liftables.Liftable'[_liftTuple20__T3], liftT4: 'Liftables.Liftable'[_liftTuple20__T4], liftT5: 'Liftables.Liftable'[_liftTuple20__T5], liftT6: 'Liftables.Liftable'[_liftTuple20__T6], liftT7: 'Liftables.Liftable'[_liftTuple20__T7], liftT8: 'Liftables.Liftable'[_liftTuple20__T8], liftT9: 'Liftables.Liftable'[_liftTuple20__T9], liftT10: 'Liftables.Liftable'[_liftTuple20__T10], liftT11: 'Liftables.Liftable'[_liftTuple20__T11], liftT12: 'Liftables.Liftable'[_liftTuple20__T12], liftT13: 'Liftables.Liftable'[_liftTuple20__T13], liftT14: 'Liftables.Liftable'[_liftTuple20__T14], liftT15: 'Liftables.Liftable'[_liftTuple20__T15], liftT16: 'Liftables.Liftable'[_liftTuple20__T16], liftT17: 'Liftables.Liftable'[_liftTuple20__T17], liftT18: 'Liftables.Liftable'[_liftTuple20__T18], liftT19: 'Liftables.Liftable'[_liftTuple20__T19], liftT20: 'Liftables.Liftable'[_liftTuple20__T20]) -> 'Liftables.Liftable'[scala.Tuple20[_liftTuple20__T1, _liftTuple20__T2, _liftTuple20__T3, _liftTuple20__T4, _liftTuple20__T5, _liftTuple20__T6, _liftTuple20__T7, _liftTuple20__T8, _liftTuple20__T9, _liftTuple20__T10, _liftTuple20__T11, _liftTuple20__T12, _liftTuple20__T13, _liftTuple20__T14, _liftTuple20__T15, _liftTuple20__T16, _liftTuple20__T17, _liftTuple20__T18, _liftTuple20__T19, _liftTuple20__T20]]: ...
        _liftTuple21__T1 = typing.TypeVar('_liftTuple21__T1')  # <T1>
        _liftTuple21__T2 = typing.TypeVar('_liftTuple21__T2')  # <T2>
        _liftTuple21__T3 = typing.TypeVar('_liftTuple21__T3')  # <T3>
        _liftTuple21__T4 = typing.TypeVar('_liftTuple21__T4')  # <T4>
        _liftTuple21__T5 = typing.TypeVar('_liftTuple21__T5')  # <T5>
        _liftTuple21__T6 = typing.TypeVar('_liftTuple21__T6')  # <T6>
        _liftTuple21__T7 = typing.TypeVar('_liftTuple21__T7')  # <T7>
        _liftTuple21__T8 = typing.TypeVar('_liftTuple21__T8')  # <T8>
        _liftTuple21__T9 = typing.TypeVar('_liftTuple21__T9')  # <T9>
        _liftTuple21__T10 = typing.TypeVar('_liftTuple21__T10')  # <T10>
        _liftTuple21__T11 = typing.TypeVar('_liftTuple21__T11')  # <T11>
        _liftTuple21__T12 = typing.TypeVar('_liftTuple21__T12')  # <T12>
        _liftTuple21__T13 = typing.TypeVar('_liftTuple21__T13')  # <T13>
        _liftTuple21__T14 = typing.TypeVar('_liftTuple21__T14')  # <T14>
        _liftTuple21__T15 = typing.TypeVar('_liftTuple21__T15')  # <T15>
        _liftTuple21__T16 = typing.TypeVar('_liftTuple21__T16')  # <T16>
        _liftTuple21__T17 = typing.TypeVar('_liftTuple21__T17')  # <T17>
        _liftTuple21__T18 = typing.TypeVar('_liftTuple21__T18')  # <T18>
        _liftTuple21__T19 = typing.TypeVar('_liftTuple21__T19')  # <T19>
        _liftTuple21__T20 = typing.TypeVar('_liftTuple21__T20')  # <T20>
        _liftTuple21__T21 = typing.TypeVar('_liftTuple21__T21')  # <T21>
        def liftTuple21(self, liftT1: 'Liftables.Liftable'[_liftTuple21__T1], liftT2: 'Liftables.Liftable'[_liftTuple21__T2], liftT3: 'Liftables.Liftable'[_liftTuple21__T3], liftT4: 'Liftables.Liftable'[_liftTuple21__T4], liftT5: 'Liftables.Liftable'[_liftTuple21__T5], liftT6: 'Liftables.Liftable'[_liftTuple21__T6], liftT7: 'Liftables.Liftable'[_liftTuple21__T7], liftT8: 'Liftables.Liftable'[_liftTuple21__T8], liftT9: 'Liftables.Liftable'[_liftTuple21__T9], liftT10: 'Liftables.Liftable'[_liftTuple21__T10], liftT11: 'Liftables.Liftable'[_liftTuple21__T11], liftT12: 'Liftables.Liftable'[_liftTuple21__T12], liftT13: 'Liftables.Liftable'[_liftTuple21__T13], liftT14: 'Liftables.Liftable'[_liftTuple21__T14], liftT15: 'Liftables.Liftable'[_liftTuple21__T15], liftT16: 'Liftables.Liftable'[_liftTuple21__T16], liftT17: 'Liftables.Liftable'[_liftTuple21__T17], liftT18: 'Liftables.Liftable'[_liftTuple21__T18], liftT19: 'Liftables.Liftable'[_liftTuple21__T19], liftT20: 'Liftables.Liftable'[_liftTuple21__T20], liftT21: 'Liftables.Liftable'[_liftTuple21__T21]) -> 'Liftables.Liftable'[scala.Tuple21[_liftTuple21__T1, _liftTuple21__T2, _liftTuple21__T3, _liftTuple21__T4, _liftTuple21__T5, _liftTuple21__T6, _liftTuple21__T7, _liftTuple21__T8, _liftTuple21__T9, _liftTuple21__T10, _liftTuple21__T11, _liftTuple21__T12, _liftTuple21__T13, _liftTuple21__T14, _liftTuple21__T15, _liftTuple21__T16, _liftTuple21__T17, _liftTuple21__T18, _liftTuple21__T19, _liftTuple21__T20, _liftTuple21__T21]]: ...
        _liftTuple22__T1 = typing.TypeVar('_liftTuple22__T1')  # <T1>
        _liftTuple22__T2 = typing.TypeVar('_liftTuple22__T2')  # <T2>
        _liftTuple22__T3 = typing.TypeVar('_liftTuple22__T3')  # <T3>
        _liftTuple22__T4 = typing.TypeVar('_liftTuple22__T4')  # <T4>
        _liftTuple22__T5 = typing.TypeVar('_liftTuple22__T5')  # <T5>
        _liftTuple22__T6 = typing.TypeVar('_liftTuple22__T6')  # <T6>
        _liftTuple22__T7 = typing.TypeVar('_liftTuple22__T7')  # <T7>
        _liftTuple22__T8 = typing.TypeVar('_liftTuple22__T8')  # <T8>
        _liftTuple22__T9 = typing.TypeVar('_liftTuple22__T9')  # <T9>
        _liftTuple22__T10 = typing.TypeVar('_liftTuple22__T10')  # <T10>
        _liftTuple22__T11 = typing.TypeVar('_liftTuple22__T11')  # <T11>
        _liftTuple22__T12 = typing.TypeVar('_liftTuple22__T12')  # <T12>
        _liftTuple22__T13 = typing.TypeVar('_liftTuple22__T13')  # <T13>
        _liftTuple22__T14 = typing.TypeVar('_liftTuple22__T14')  # <T14>
        _liftTuple22__T15 = typing.TypeVar('_liftTuple22__T15')  # <T15>
        _liftTuple22__T16 = typing.TypeVar('_liftTuple22__T16')  # <T16>
        _liftTuple22__T17 = typing.TypeVar('_liftTuple22__T17')  # <T17>
        _liftTuple22__T18 = typing.TypeVar('_liftTuple22__T18')  # <T18>
        _liftTuple22__T19 = typing.TypeVar('_liftTuple22__T19')  # <T19>
        _liftTuple22__T20 = typing.TypeVar('_liftTuple22__T20')  # <T20>
        _liftTuple22__T21 = typing.TypeVar('_liftTuple22__T21')  # <T21>
        _liftTuple22__T22 = typing.TypeVar('_liftTuple22__T22')  # <T22>
        def liftTuple22(self, liftT1: 'Liftables.Liftable'[_liftTuple22__T1], liftT2: 'Liftables.Liftable'[_liftTuple22__T2], liftT3: 'Liftables.Liftable'[_liftTuple22__T3], liftT4: 'Liftables.Liftable'[_liftTuple22__T4], liftT5: 'Liftables.Liftable'[_liftTuple22__T5], liftT6: 'Liftables.Liftable'[_liftTuple22__T6], liftT7: 'Liftables.Liftable'[_liftTuple22__T7], liftT8: 'Liftables.Liftable'[_liftTuple22__T8], liftT9: 'Liftables.Liftable'[_liftTuple22__T9], liftT10: 'Liftables.Liftable'[_liftTuple22__T10], liftT11: 'Liftables.Liftable'[_liftTuple22__T11], liftT12: 'Liftables.Liftable'[_liftTuple22__T12], liftT13: 'Liftables.Liftable'[_liftTuple22__T13], liftT14: 'Liftables.Liftable'[_liftTuple22__T14], liftT15: 'Liftables.Liftable'[_liftTuple22__T15], liftT16: 'Liftables.Liftable'[_liftTuple22__T16], liftT17: 'Liftables.Liftable'[_liftTuple22__T17], liftT18: 'Liftables.Liftable'[_liftTuple22__T18], liftT19: 'Liftables.Liftable'[_liftTuple22__T19], liftT20: 'Liftables.Liftable'[_liftTuple22__T20], liftT21: 'Liftables.Liftable'[_liftTuple22__T21], liftT22: 'Liftables.Liftable'[_liftTuple22__T22]) -> 'Liftables.Liftable'[scala.Tuple22[_liftTuple22__T1, _liftTuple22__T2, _liftTuple22__T3, _liftTuple22__T4, _liftTuple22__T5, _liftTuple22__T6, _liftTuple22__T7, _liftTuple22__T8, _liftTuple22__T9, _liftTuple22__T10, _liftTuple22__T11, _liftTuple22__T12, _liftTuple22__T13, _liftTuple22__T14, _liftTuple22__T15, _liftTuple22__T16, _liftTuple22__T17, _liftTuple22__T18, _liftTuple22__T19, _liftTuple22__T20, _liftTuple22__T21, _liftTuple22__T22]]: ...
        _liftTuple3__T1 = typing.TypeVar('_liftTuple3__T1')  # <T1>
        _liftTuple3__T2 = typing.TypeVar('_liftTuple3__T2')  # <T2>
        _liftTuple3__T3 = typing.TypeVar('_liftTuple3__T3')  # <T3>
        def liftTuple3(self, liftT1: 'Liftables.Liftable'[_liftTuple3__T1], liftT2: 'Liftables.Liftable'[_liftTuple3__T2], liftT3: 'Liftables.Liftable'[_liftTuple3__T3]) -> 'Liftables.Liftable'[scala.Tuple3[_liftTuple3__T1, _liftTuple3__T2, _liftTuple3__T3]]: ...
        _liftTuple4__T1 = typing.TypeVar('_liftTuple4__T1')  # <T1>
        _liftTuple4__T2 = typing.TypeVar('_liftTuple4__T2')  # <T2>
        _liftTuple4__T3 = typing.TypeVar('_liftTuple4__T3')  # <T3>
        _liftTuple4__T4 = typing.TypeVar('_liftTuple4__T4')  # <T4>
        def liftTuple4(self, liftT1: 'Liftables.Liftable'[_liftTuple4__T1], liftT2: 'Liftables.Liftable'[_liftTuple4__T2], liftT3: 'Liftables.Liftable'[_liftTuple4__T3], liftT4: 'Liftables.Liftable'[_liftTuple4__T4]) -> 'Liftables.Liftable'[scala.Tuple4[_liftTuple4__T1, _liftTuple4__T2, _liftTuple4__T3, _liftTuple4__T4]]: ...
        _liftTuple5__T1 = typing.TypeVar('_liftTuple5__T1')  # <T1>
        _liftTuple5__T2 = typing.TypeVar('_liftTuple5__T2')  # <T2>
        _liftTuple5__T3 = typing.TypeVar('_liftTuple5__T3')  # <T3>
        _liftTuple5__T4 = typing.TypeVar('_liftTuple5__T4')  # <T4>
        _liftTuple5__T5 = typing.TypeVar('_liftTuple5__T5')  # <T5>
        def liftTuple5(self, liftT1: 'Liftables.Liftable'[_liftTuple5__T1], liftT2: 'Liftables.Liftable'[_liftTuple5__T2], liftT3: 'Liftables.Liftable'[_liftTuple5__T3], liftT4: 'Liftables.Liftable'[_liftTuple5__T4], liftT5: 'Liftables.Liftable'[_liftTuple5__T5]) -> 'Liftables.Liftable'[scala.Tuple5[_liftTuple5__T1, _liftTuple5__T2, _liftTuple5__T3, _liftTuple5__T4, _liftTuple5__T5]]: ...
        _liftTuple6__T1 = typing.TypeVar('_liftTuple6__T1')  # <T1>
        _liftTuple6__T2 = typing.TypeVar('_liftTuple6__T2')  # <T2>
        _liftTuple6__T3 = typing.TypeVar('_liftTuple6__T3')  # <T3>
        _liftTuple6__T4 = typing.TypeVar('_liftTuple6__T4')  # <T4>
        _liftTuple6__T5 = typing.TypeVar('_liftTuple6__T5')  # <T5>
        _liftTuple6__T6 = typing.TypeVar('_liftTuple6__T6')  # <T6>
        def liftTuple6(self, liftT1: 'Liftables.Liftable'[_liftTuple6__T1], liftT2: 'Liftables.Liftable'[_liftTuple6__T2], liftT3: 'Liftables.Liftable'[_liftTuple6__T3], liftT4: 'Liftables.Liftable'[_liftTuple6__T4], liftT5: 'Liftables.Liftable'[_liftTuple6__T5], liftT6: 'Liftables.Liftable'[_liftTuple6__T6]) -> 'Liftables.Liftable'[scala.Tuple6[_liftTuple6__T1, _liftTuple6__T2, _liftTuple6__T3, _liftTuple6__T4, _liftTuple6__T5, _liftTuple6__T6]]: ...
        _liftTuple7__T1 = typing.TypeVar('_liftTuple7__T1')  # <T1>
        _liftTuple7__T2 = typing.TypeVar('_liftTuple7__T2')  # <T2>
        _liftTuple7__T3 = typing.TypeVar('_liftTuple7__T3')  # <T3>
        _liftTuple7__T4 = typing.TypeVar('_liftTuple7__T4')  # <T4>
        _liftTuple7__T5 = typing.TypeVar('_liftTuple7__T5')  # <T5>
        _liftTuple7__T6 = typing.TypeVar('_liftTuple7__T6')  # <T6>
        _liftTuple7__T7 = typing.TypeVar('_liftTuple7__T7')  # <T7>
        def liftTuple7(self, liftT1: 'Liftables.Liftable'[_liftTuple7__T1], liftT2: 'Liftables.Liftable'[_liftTuple7__T2], liftT3: 'Liftables.Liftable'[_liftTuple7__T3], liftT4: 'Liftables.Liftable'[_liftTuple7__T4], liftT5: 'Liftables.Liftable'[_liftTuple7__T5], liftT6: 'Liftables.Liftable'[_liftTuple7__T6], liftT7: 'Liftables.Liftable'[_liftTuple7__T7]) -> 'Liftables.Liftable'[scala.Tuple7[_liftTuple7__T1, _liftTuple7__T2, _liftTuple7__T3, _liftTuple7__T4, _liftTuple7__T5, _liftTuple7__T6, _liftTuple7__T7]]: ...
        _liftTuple8__T1 = typing.TypeVar('_liftTuple8__T1')  # <T1>
        _liftTuple8__T2 = typing.TypeVar('_liftTuple8__T2')  # <T2>
        _liftTuple8__T3 = typing.TypeVar('_liftTuple8__T3')  # <T3>
        _liftTuple8__T4 = typing.TypeVar('_liftTuple8__T4')  # <T4>
        _liftTuple8__T5 = typing.TypeVar('_liftTuple8__T5')  # <T5>
        _liftTuple8__T6 = typing.TypeVar('_liftTuple8__T6')  # <T6>
        _liftTuple8__T7 = typing.TypeVar('_liftTuple8__T7')  # <T7>
        _liftTuple8__T8 = typing.TypeVar('_liftTuple8__T8')  # <T8>
        def liftTuple8(self, liftT1: 'Liftables.Liftable'[_liftTuple8__T1], liftT2: 'Liftables.Liftable'[_liftTuple8__T2], liftT3: 'Liftables.Liftable'[_liftTuple8__T3], liftT4: 'Liftables.Liftable'[_liftTuple8__T4], liftT5: 'Liftables.Liftable'[_liftTuple8__T5], liftT6: 'Liftables.Liftable'[_liftTuple8__T6], liftT7: 'Liftables.Liftable'[_liftTuple8__T7], liftT8: 'Liftables.Liftable'[_liftTuple8__T8]) -> 'Liftables.Liftable'[scala.Tuple8[_liftTuple8__T1, _liftTuple8__T2, _liftTuple8__T3, _liftTuple8__T4, _liftTuple8__T5, _liftTuple8__T6, _liftTuple8__T7, _liftTuple8__T8]]: ...
        _liftTuple9__T1 = typing.TypeVar('_liftTuple9__T1')  # <T1>
        _liftTuple9__T2 = typing.TypeVar('_liftTuple9__T2')  # <T2>
        _liftTuple9__T3 = typing.TypeVar('_liftTuple9__T3')  # <T3>
        _liftTuple9__T4 = typing.TypeVar('_liftTuple9__T4')  # <T4>
        _liftTuple9__T5 = typing.TypeVar('_liftTuple9__T5')  # <T5>
        _liftTuple9__T6 = typing.TypeVar('_liftTuple9__T6')  # <T6>
        _liftTuple9__T7 = typing.TypeVar('_liftTuple9__T7')  # <T7>
        _liftTuple9__T8 = typing.TypeVar('_liftTuple9__T8')  # <T8>
        _liftTuple9__T9 = typing.TypeVar('_liftTuple9__T9')  # <T9>
        def liftTuple9(self, liftT1: 'Liftables.Liftable'[_liftTuple9__T1], liftT2: 'Liftables.Liftable'[_liftTuple9__T2], liftT3: 'Liftables.Liftable'[_liftTuple9__T3], liftT4: 'Liftables.Liftable'[_liftTuple9__T4], liftT5: 'Liftables.Liftable'[_liftTuple9__T5], liftT6: 'Liftables.Liftable'[_liftTuple9__T6], liftT7: 'Liftables.Liftable'[_liftTuple9__T7], liftT8: 'Liftables.Liftable'[_liftTuple9__T8], liftT9: 'Liftables.Liftable'[_liftTuple9__T9]) -> 'Liftables.Liftable'[scala.Tuple9[_liftTuple9__T1, _liftTuple9__T2, _liftTuple9__T3, _liftTuple9__T4, _liftTuple9__T5, _liftTuple9__T6, _liftTuple9__T7, _liftTuple9__T8, _liftTuple9__T9]]: ...
        _liftType__T = typing.TypeVar('_liftType__T', bound=Types.TypeApi)  # <T>
        def liftType(self) -> 'Liftables.Liftable'[_liftType__T]: ...
        _liftTypeTag__T = typing.TypeVar('_liftTypeTag__T', bound='TypeTags.WeakTypeTag')  # <T>
        def liftTypeTag(self) -> 'Liftables.Liftable'[_liftTypeTag__T]: ...
        def liftUnit(self) -> 'Liftables.Liftable'[scala.runtime.BoxedUnit]: ...
        _liftVector__T = typing.TypeVar('_liftVector__T')  # <T>
        def liftVector(self, evidence$3: 'Liftables.Liftable'[_liftVector__T]) -> 'Liftables.Liftable'[scala.collection.immutable.Vector[_liftVector__T]]: ...
    class Unliftable(typing.Generic[_Liftables__Unliftable__T]):
        def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[_Liftables__Unliftable__T]: ...
    class Unliftable$(StandardLiftables.StandardUnliftableInstances):
        def __init__(self, $outer: 'Universe'): ...
        _apply__T = typing.TypeVar('_apply__T')  # <T>
        def apply(self, pf: scala.PartialFunction['Trees.TreeApi', _apply__T]) -> 'Liftables.Unliftable'[_apply__T]: ...
        def unliftBoolean(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftByte(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftChar(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftConstant(self) -> 'Liftables.Unliftable'[Constants.ConstantApi]: ...
        def unliftDouble(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftFloat(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftInt(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftLong(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        _unliftName__T = typing.TypeVar('_unliftName__T', bound=Names.NameApi)  # <T>
        def unliftName(self, evidence$16: scala.reflect.ClassTag[_unliftName__T]) -> 'Liftables.Unliftable'[_unliftName__T]: ...
        def unliftScalaSymbol(self) -> 'Liftables.Unliftable'[scala.Symbol]: ...
        def unliftShort(self) -> 'Liftables.Unliftable'[typing.Any]: ...
        def unliftString(self) -> 'Liftables.Unliftable'[java.lang.String]: ...
        _unliftTuple10__T1 = typing.TypeVar('_unliftTuple10__T1')  # <T1>
        _unliftTuple10__T2 = typing.TypeVar('_unliftTuple10__T2')  # <T2>
        _unliftTuple10__T3 = typing.TypeVar('_unliftTuple10__T3')  # <T3>
        _unliftTuple10__T4 = typing.TypeVar('_unliftTuple10__T4')  # <T4>
        _unliftTuple10__T5 = typing.TypeVar('_unliftTuple10__T5')  # <T5>
        _unliftTuple10__T6 = typing.TypeVar('_unliftTuple10__T6')  # <T6>
        _unliftTuple10__T7 = typing.TypeVar('_unliftTuple10__T7')  # <T7>
        _unliftTuple10__T8 = typing.TypeVar('_unliftTuple10__T8')  # <T8>
        _unliftTuple10__T9 = typing.TypeVar('_unliftTuple10__T9')  # <T9>
        _unliftTuple10__T10 = typing.TypeVar('_unliftTuple10__T10')  # <T10>
        def unliftTuple10(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple10__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple10__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple10__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple10__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple10__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple10__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple10__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple10__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple10__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple10__T10]) -> 'Liftables.Unliftable'[scala.Tuple10[_unliftTuple10__T1, _unliftTuple10__T2, _unliftTuple10__T3, _unliftTuple10__T4, _unliftTuple10__T5, _unliftTuple10__T6, _unliftTuple10__T7, _unliftTuple10__T8, _unliftTuple10__T9, _unliftTuple10__T10]]: ...
        _unliftTuple11__T1 = typing.TypeVar('_unliftTuple11__T1')  # <T1>
        _unliftTuple11__T2 = typing.TypeVar('_unliftTuple11__T2')  # <T2>
        _unliftTuple11__T3 = typing.TypeVar('_unliftTuple11__T3')  # <T3>
        _unliftTuple11__T4 = typing.TypeVar('_unliftTuple11__T4')  # <T4>
        _unliftTuple11__T5 = typing.TypeVar('_unliftTuple11__T5')  # <T5>
        _unliftTuple11__T6 = typing.TypeVar('_unliftTuple11__T6')  # <T6>
        _unliftTuple11__T7 = typing.TypeVar('_unliftTuple11__T7')  # <T7>
        _unliftTuple11__T8 = typing.TypeVar('_unliftTuple11__T8')  # <T8>
        _unliftTuple11__T9 = typing.TypeVar('_unliftTuple11__T9')  # <T9>
        _unliftTuple11__T10 = typing.TypeVar('_unliftTuple11__T10')  # <T10>
        _unliftTuple11__T11 = typing.TypeVar('_unliftTuple11__T11')  # <T11>
        def unliftTuple11(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple11__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple11__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple11__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple11__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple11__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple11__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple11__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple11__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple11__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple11__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple11__T11]) -> 'Liftables.Unliftable'[scala.Tuple11[_unliftTuple11__T1, _unliftTuple11__T2, _unliftTuple11__T3, _unliftTuple11__T4, _unliftTuple11__T5, _unliftTuple11__T6, _unliftTuple11__T7, _unliftTuple11__T8, _unliftTuple11__T9, _unliftTuple11__T10, _unliftTuple11__T11]]: ...
        _unliftTuple12__T1 = typing.TypeVar('_unliftTuple12__T1')  # <T1>
        _unliftTuple12__T2 = typing.TypeVar('_unliftTuple12__T2')  # <T2>
        _unliftTuple12__T3 = typing.TypeVar('_unliftTuple12__T3')  # <T3>
        _unliftTuple12__T4 = typing.TypeVar('_unliftTuple12__T4')  # <T4>
        _unliftTuple12__T5 = typing.TypeVar('_unliftTuple12__T5')  # <T5>
        _unliftTuple12__T6 = typing.TypeVar('_unliftTuple12__T6')  # <T6>
        _unliftTuple12__T7 = typing.TypeVar('_unliftTuple12__T7')  # <T7>
        _unliftTuple12__T8 = typing.TypeVar('_unliftTuple12__T8')  # <T8>
        _unliftTuple12__T9 = typing.TypeVar('_unliftTuple12__T9')  # <T9>
        _unliftTuple12__T10 = typing.TypeVar('_unliftTuple12__T10')  # <T10>
        _unliftTuple12__T11 = typing.TypeVar('_unliftTuple12__T11')  # <T11>
        _unliftTuple12__T12 = typing.TypeVar('_unliftTuple12__T12')  # <T12>
        def unliftTuple12(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple12__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple12__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple12__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple12__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple12__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple12__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple12__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple12__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple12__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple12__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple12__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple12__T12]) -> 'Liftables.Unliftable'[scala.Tuple12[_unliftTuple12__T1, _unliftTuple12__T2, _unliftTuple12__T3, _unliftTuple12__T4, _unliftTuple12__T5, _unliftTuple12__T6, _unliftTuple12__T7, _unliftTuple12__T8, _unliftTuple12__T9, _unliftTuple12__T10, _unliftTuple12__T11, _unliftTuple12__T12]]: ...
        _unliftTuple13__T1 = typing.TypeVar('_unliftTuple13__T1')  # <T1>
        _unliftTuple13__T2 = typing.TypeVar('_unliftTuple13__T2')  # <T2>
        _unliftTuple13__T3 = typing.TypeVar('_unliftTuple13__T3')  # <T3>
        _unliftTuple13__T4 = typing.TypeVar('_unliftTuple13__T4')  # <T4>
        _unliftTuple13__T5 = typing.TypeVar('_unliftTuple13__T5')  # <T5>
        _unliftTuple13__T6 = typing.TypeVar('_unliftTuple13__T6')  # <T6>
        _unliftTuple13__T7 = typing.TypeVar('_unliftTuple13__T7')  # <T7>
        _unliftTuple13__T8 = typing.TypeVar('_unliftTuple13__T8')  # <T8>
        _unliftTuple13__T9 = typing.TypeVar('_unliftTuple13__T9')  # <T9>
        _unliftTuple13__T10 = typing.TypeVar('_unliftTuple13__T10')  # <T10>
        _unliftTuple13__T11 = typing.TypeVar('_unliftTuple13__T11')  # <T11>
        _unliftTuple13__T12 = typing.TypeVar('_unliftTuple13__T12')  # <T12>
        _unliftTuple13__T13 = typing.TypeVar('_unliftTuple13__T13')  # <T13>
        def unliftTuple13(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple13__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple13__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple13__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple13__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple13__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple13__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple13__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple13__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple13__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple13__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple13__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple13__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple13__T13]) -> 'Liftables.Unliftable'[scala.Tuple13[_unliftTuple13__T1, _unliftTuple13__T2, _unliftTuple13__T3, _unliftTuple13__T4, _unliftTuple13__T5, _unliftTuple13__T6, _unliftTuple13__T7, _unliftTuple13__T8, _unliftTuple13__T9, _unliftTuple13__T10, _unliftTuple13__T11, _unliftTuple13__T12, _unliftTuple13__T13]]: ...
        _unliftTuple14__T1 = typing.TypeVar('_unliftTuple14__T1')  # <T1>
        _unliftTuple14__T2 = typing.TypeVar('_unliftTuple14__T2')  # <T2>
        _unliftTuple14__T3 = typing.TypeVar('_unliftTuple14__T3')  # <T3>
        _unliftTuple14__T4 = typing.TypeVar('_unliftTuple14__T4')  # <T4>
        _unliftTuple14__T5 = typing.TypeVar('_unliftTuple14__T5')  # <T5>
        _unliftTuple14__T6 = typing.TypeVar('_unliftTuple14__T6')  # <T6>
        _unliftTuple14__T7 = typing.TypeVar('_unliftTuple14__T7')  # <T7>
        _unliftTuple14__T8 = typing.TypeVar('_unliftTuple14__T8')  # <T8>
        _unliftTuple14__T9 = typing.TypeVar('_unliftTuple14__T9')  # <T9>
        _unliftTuple14__T10 = typing.TypeVar('_unliftTuple14__T10')  # <T10>
        _unliftTuple14__T11 = typing.TypeVar('_unliftTuple14__T11')  # <T11>
        _unliftTuple14__T12 = typing.TypeVar('_unliftTuple14__T12')  # <T12>
        _unliftTuple14__T13 = typing.TypeVar('_unliftTuple14__T13')  # <T13>
        _unliftTuple14__T14 = typing.TypeVar('_unliftTuple14__T14')  # <T14>
        def unliftTuple14(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple14__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple14__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple14__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple14__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple14__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple14__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple14__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple14__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple14__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple14__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple14__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple14__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple14__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple14__T14]) -> 'Liftables.Unliftable'[scala.Tuple14[_unliftTuple14__T1, _unliftTuple14__T2, _unliftTuple14__T3, _unliftTuple14__T4, _unliftTuple14__T5, _unliftTuple14__T6, _unliftTuple14__T7, _unliftTuple14__T8, _unliftTuple14__T9, _unliftTuple14__T10, _unliftTuple14__T11, _unliftTuple14__T12, _unliftTuple14__T13, _unliftTuple14__T14]]: ...
        _unliftTuple15__T1 = typing.TypeVar('_unliftTuple15__T1')  # <T1>
        _unliftTuple15__T2 = typing.TypeVar('_unliftTuple15__T2')  # <T2>
        _unliftTuple15__T3 = typing.TypeVar('_unliftTuple15__T3')  # <T3>
        _unliftTuple15__T4 = typing.TypeVar('_unliftTuple15__T4')  # <T4>
        _unliftTuple15__T5 = typing.TypeVar('_unliftTuple15__T5')  # <T5>
        _unliftTuple15__T6 = typing.TypeVar('_unliftTuple15__T6')  # <T6>
        _unliftTuple15__T7 = typing.TypeVar('_unliftTuple15__T7')  # <T7>
        _unliftTuple15__T8 = typing.TypeVar('_unliftTuple15__T8')  # <T8>
        _unliftTuple15__T9 = typing.TypeVar('_unliftTuple15__T9')  # <T9>
        _unliftTuple15__T10 = typing.TypeVar('_unliftTuple15__T10')  # <T10>
        _unliftTuple15__T11 = typing.TypeVar('_unliftTuple15__T11')  # <T11>
        _unliftTuple15__T12 = typing.TypeVar('_unliftTuple15__T12')  # <T12>
        _unliftTuple15__T13 = typing.TypeVar('_unliftTuple15__T13')  # <T13>
        _unliftTuple15__T14 = typing.TypeVar('_unliftTuple15__T14')  # <T14>
        _unliftTuple15__T15 = typing.TypeVar('_unliftTuple15__T15')  # <T15>
        def unliftTuple15(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple15__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple15__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple15__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple15__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple15__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple15__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple15__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple15__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple15__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple15__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple15__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple15__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple15__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple15__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple15__T15]) -> 'Liftables.Unliftable'[scala.Tuple15[_unliftTuple15__T1, _unliftTuple15__T2, _unliftTuple15__T3, _unliftTuple15__T4, _unliftTuple15__T5, _unliftTuple15__T6, _unliftTuple15__T7, _unliftTuple15__T8, _unliftTuple15__T9, _unliftTuple15__T10, _unliftTuple15__T11, _unliftTuple15__T12, _unliftTuple15__T13, _unliftTuple15__T14, _unliftTuple15__T15]]: ...
        _unliftTuple16__T1 = typing.TypeVar('_unliftTuple16__T1')  # <T1>
        _unliftTuple16__T2 = typing.TypeVar('_unliftTuple16__T2')  # <T2>
        _unliftTuple16__T3 = typing.TypeVar('_unliftTuple16__T3')  # <T3>
        _unliftTuple16__T4 = typing.TypeVar('_unliftTuple16__T4')  # <T4>
        _unliftTuple16__T5 = typing.TypeVar('_unliftTuple16__T5')  # <T5>
        _unliftTuple16__T6 = typing.TypeVar('_unliftTuple16__T6')  # <T6>
        _unliftTuple16__T7 = typing.TypeVar('_unliftTuple16__T7')  # <T7>
        _unliftTuple16__T8 = typing.TypeVar('_unliftTuple16__T8')  # <T8>
        _unliftTuple16__T9 = typing.TypeVar('_unliftTuple16__T9')  # <T9>
        _unliftTuple16__T10 = typing.TypeVar('_unliftTuple16__T10')  # <T10>
        _unliftTuple16__T11 = typing.TypeVar('_unliftTuple16__T11')  # <T11>
        _unliftTuple16__T12 = typing.TypeVar('_unliftTuple16__T12')  # <T12>
        _unliftTuple16__T13 = typing.TypeVar('_unliftTuple16__T13')  # <T13>
        _unliftTuple16__T14 = typing.TypeVar('_unliftTuple16__T14')  # <T14>
        _unliftTuple16__T15 = typing.TypeVar('_unliftTuple16__T15')  # <T15>
        _unliftTuple16__T16 = typing.TypeVar('_unliftTuple16__T16')  # <T16>
        def unliftTuple16(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple16__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple16__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple16__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple16__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple16__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple16__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple16__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple16__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple16__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple16__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple16__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple16__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple16__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple16__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple16__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple16__T16]) -> 'Liftables.Unliftable'[scala.Tuple16[_unliftTuple16__T1, _unliftTuple16__T2, _unliftTuple16__T3, _unliftTuple16__T4, _unliftTuple16__T5, _unliftTuple16__T6, _unliftTuple16__T7, _unliftTuple16__T8, _unliftTuple16__T9, _unliftTuple16__T10, _unliftTuple16__T11, _unliftTuple16__T12, _unliftTuple16__T13, _unliftTuple16__T14, _unliftTuple16__T15, _unliftTuple16__T16]]: ...
        _unliftTuple17__T1 = typing.TypeVar('_unliftTuple17__T1')  # <T1>
        _unliftTuple17__T2 = typing.TypeVar('_unliftTuple17__T2')  # <T2>
        _unliftTuple17__T3 = typing.TypeVar('_unliftTuple17__T3')  # <T3>
        _unliftTuple17__T4 = typing.TypeVar('_unliftTuple17__T4')  # <T4>
        _unliftTuple17__T5 = typing.TypeVar('_unliftTuple17__T5')  # <T5>
        _unliftTuple17__T6 = typing.TypeVar('_unliftTuple17__T6')  # <T6>
        _unliftTuple17__T7 = typing.TypeVar('_unliftTuple17__T7')  # <T7>
        _unliftTuple17__T8 = typing.TypeVar('_unliftTuple17__T8')  # <T8>
        _unliftTuple17__T9 = typing.TypeVar('_unliftTuple17__T9')  # <T9>
        _unliftTuple17__T10 = typing.TypeVar('_unliftTuple17__T10')  # <T10>
        _unliftTuple17__T11 = typing.TypeVar('_unliftTuple17__T11')  # <T11>
        _unliftTuple17__T12 = typing.TypeVar('_unliftTuple17__T12')  # <T12>
        _unliftTuple17__T13 = typing.TypeVar('_unliftTuple17__T13')  # <T13>
        _unliftTuple17__T14 = typing.TypeVar('_unliftTuple17__T14')  # <T14>
        _unliftTuple17__T15 = typing.TypeVar('_unliftTuple17__T15')  # <T15>
        _unliftTuple17__T16 = typing.TypeVar('_unliftTuple17__T16')  # <T16>
        _unliftTuple17__T17 = typing.TypeVar('_unliftTuple17__T17')  # <T17>
        def unliftTuple17(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple17__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple17__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple17__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple17__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple17__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple17__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple17__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple17__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple17__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple17__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple17__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple17__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple17__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple17__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple17__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple17__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple17__T17]) -> 'Liftables.Unliftable'[scala.Tuple17[_unliftTuple17__T1, _unliftTuple17__T2, _unliftTuple17__T3, _unliftTuple17__T4, _unliftTuple17__T5, _unliftTuple17__T6, _unliftTuple17__T7, _unliftTuple17__T8, _unliftTuple17__T9, _unliftTuple17__T10, _unliftTuple17__T11, _unliftTuple17__T12, _unliftTuple17__T13, _unliftTuple17__T14, _unliftTuple17__T15, _unliftTuple17__T16, _unliftTuple17__T17]]: ...
        _unliftTuple18__T1 = typing.TypeVar('_unliftTuple18__T1')  # <T1>
        _unliftTuple18__T2 = typing.TypeVar('_unliftTuple18__T2')  # <T2>
        _unliftTuple18__T3 = typing.TypeVar('_unliftTuple18__T3')  # <T3>
        _unliftTuple18__T4 = typing.TypeVar('_unliftTuple18__T4')  # <T4>
        _unliftTuple18__T5 = typing.TypeVar('_unliftTuple18__T5')  # <T5>
        _unliftTuple18__T6 = typing.TypeVar('_unliftTuple18__T6')  # <T6>
        _unliftTuple18__T7 = typing.TypeVar('_unliftTuple18__T7')  # <T7>
        _unliftTuple18__T8 = typing.TypeVar('_unliftTuple18__T8')  # <T8>
        _unliftTuple18__T9 = typing.TypeVar('_unliftTuple18__T9')  # <T9>
        _unliftTuple18__T10 = typing.TypeVar('_unliftTuple18__T10')  # <T10>
        _unliftTuple18__T11 = typing.TypeVar('_unliftTuple18__T11')  # <T11>
        _unliftTuple18__T12 = typing.TypeVar('_unliftTuple18__T12')  # <T12>
        _unliftTuple18__T13 = typing.TypeVar('_unliftTuple18__T13')  # <T13>
        _unliftTuple18__T14 = typing.TypeVar('_unliftTuple18__T14')  # <T14>
        _unliftTuple18__T15 = typing.TypeVar('_unliftTuple18__T15')  # <T15>
        _unliftTuple18__T16 = typing.TypeVar('_unliftTuple18__T16')  # <T16>
        _unliftTuple18__T17 = typing.TypeVar('_unliftTuple18__T17')  # <T17>
        _unliftTuple18__T18 = typing.TypeVar('_unliftTuple18__T18')  # <T18>
        def unliftTuple18(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple18__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple18__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple18__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple18__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple18__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple18__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple18__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple18__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple18__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple18__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple18__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple18__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple18__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple18__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple18__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple18__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple18__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple18__T18]) -> 'Liftables.Unliftable'[scala.Tuple18[_unliftTuple18__T1, _unliftTuple18__T2, _unliftTuple18__T3, _unliftTuple18__T4, _unliftTuple18__T5, _unliftTuple18__T6, _unliftTuple18__T7, _unliftTuple18__T8, _unliftTuple18__T9, _unliftTuple18__T10, _unliftTuple18__T11, _unliftTuple18__T12, _unliftTuple18__T13, _unliftTuple18__T14, _unliftTuple18__T15, _unliftTuple18__T16, _unliftTuple18__T17, _unliftTuple18__T18]]: ...
        _unliftTuple19__T1 = typing.TypeVar('_unliftTuple19__T1')  # <T1>
        _unliftTuple19__T2 = typing.TypeVar('_unliftTuple19__T2')  # <T2>
        _unliftTuple19__T3 = typing.TypeVar('_unliftTuple19__T3')  # <T3>
        _unliftTuple19__T4 = typing.TypeVar('_unliftTuple19__T4')  # <T4>
        _unliftTuple19__T5 = typing.TypeVar('_unliftTuple19__T5')  # <T5>
        _unliftTuple19__T6 = typing.TypeVar('_unliftTuple19__T6')  # <T6>
        _unliftTuple19__T7 = typing.TypeVar('_unliftTuple19__T7')  # <T7>
        _unliftTuple19__T8 = typing.TypeVar('_unliftTuple19__T8')  # <T8>
        _unliftTuple19__T9 = typing.TypeVar('_unliftTuple19__T9')  # <T9>
        _unliftTuple19__T10 = typing.TypeVar('_unliftTuple19__T10')  # <T10>
        _unliftTuple19__T11 = typing.TypeVar('_unliftTuple19__T11')  # <T11>
        _unliftTuple19__T12 = typing.TypeVar('_unliftTuple19__T12')  # <T12>
        _unliftTuple19__T13 = typing.TypeVar('_unliftTuple19__T13')  # <T13>
        _unliftTuple19__T14 = typing.TypeVar('_unliftTuple19__T14')  # <T14>
        _unliftTuple19__T15 = typing.TypeVar('_unliftTuple19__T15')  # <T15>
        _unliftTuple19__T16 = typing.TypeVar('_unliftTuple19__T16')  # <T16>
        _unliftTuple19__T17 = typing.TypeVar('_unliftTuple19__T17')  # <T17>
        _unliftTuple19__T18 = typing.TypeVar('_unliftTuple19__T18')  # <T18>
        _unliftTuple19__T19 = typing.TypeVar('_unliftTuple19__T19')  # <T19>
        def unliftTuple19(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple19__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple19__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple19__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple19__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple19__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple19__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple19__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple19__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple19__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple19__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple19__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple19__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple19__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple19__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple19__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple19__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple19__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple19__T18], UnliftT19: 'Liftables.Unliftable'[_unliftTuple19__T19]) -> 'Liftables.Unliftable'[scala.Tuple19[_unliftTuple19__T1, _unliftTuple19__T2, _unliftTuple19__T3, _unliftTuple19__T4, _unliftTuple19__T5, _unliftTuple19__T6, _unliftTuple19__T7, _unliftTuple19__T8, _unliftTuple19__T9, _unliftTuple19__T10, _unliftTuple19__T11, _unliftTuple19__T12, _unliftTuple19__T13, _unliftTuple19__T14, _unliftTuple19__T15, _unliftTuple19__T16, _unliftTuple19__T17, _unliftTuple19__T18, _unliftTuple19__T19]]: ...
        _unliftTuple2__T1 = typing.TypeVar('_unliftTuple2__T1')  # <T1>
        _unliftTuple2__T2 = typing.TypeVar('_unliftTuple2__T2')  # <T2>
        def unliftTuple2(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple2__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple2__T2]) -> 'Liftables.Unliftable'[scala.Tuple2[_unliftTuple2__T1, _unliftTuple2__T2]]: ...
        _unliftTuple20__T1 = typing.TypeVar('_unliftTuple20__T1')  # <T1>
        _unliftTuple20__T2 = typing.TypeVar('_unliftTuple20__T2')  # <T2>
        _unliftTuple20__T3 = typing.TypeVar('_unliftTuple20__T3')  # <T3>
        _unliftTuple20__T4 = typing.TypeVar('_unliftTuple20__T4')  # <T4>
        _unliftTuple20__T5 = typing.TypeVar('_unliftTuple20__T5')  # <T5>
        _unliftTuple20__T6 = typing.TypeVar('_unliftTuple20__T6')  # <T6>
        _unliftTuple20__T7 = typing.TypeVar('_unliftTuple20__T7')  # <T7>
        _unliftTuple20__T8 = typing.TypeVar('_unliftTuple20__T8')  # <T8>
        _unliftTuple20__T9 = typing.TypeVar('_unliftTuple20__T9')  # <T9>
        _unliftTuple20__T10 = typing.TypeVar('_unliftTuple20__T10')  # <T10>
        _unliftTuple20__T11 = typing.TypeVar('_unliftTuple20__T11')  # <T11>
        _unliftTuple20__T12 = typing.TypeVar('_unliftTuple20__T12')  # <T12>
        _unliftTuple20__T13 = typing.TypeVar('_unliftTuple20__T13')  # <T13>
        _unliftTuple20__T14 = typing.TypeVar('_unliftTuple20__T14')  # <T14>
        _unliftTuple20__T15 = typing.TypeVar('_unliftTuple20__T15')  # <T15>
        _unliftTuple20__T16 = typing.TypeVar('_unliftTuple20__T16')  # <T16>
        _unliftTuple20__T17 = typing.TypeVar('_unliftTuple20__T17')  # <T17>
        _unliftTuple20__T18 = typing.TypeVar('_unliftTuple20__T18')  # <T18>
        _unliftTuple20__T19 = typing.TypeVar('_unliftTuple20__T19')  # <T19>
        _unliftTuple20__T20 = typing.TypeVar('_unliftTuple20__T20')  # <T20>
        def unliftTuple20(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple20__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple20__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple20__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple20__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple20__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple20__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple20__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple20__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple20__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple20__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple20__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple20__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple20__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple20__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple20__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple20__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple20__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple20__T18], UnliftT19: 'Liftables.Unliftable'[_unliftTuple20__T19], UnliftT20: 'Liftables.Unliftable'[_unliftTuple20__T20]) -> 'Liftables.Unliftable'[scala.Tuple20[_unliftTuple20__T1, _unliftTuple20__T2, _unliftTuple20__T3, _unliftTuple20__T4, _unliftTuple20__T5, _unliftTuple20__T6, _unliftTuple20__T7, _unliftTuple20__T8, _unliftTuple20__T9, _unliftTuple20__T10, _unliftTuple20__T11, _unliftTuple20__T12, _unliftTuple20__T13, _unliftTuple20__T14, _unliftTuple20__T15, _unliftTuple20__T16, _unliftTuple20__T17, _unliftTuple20__T18, _unliftTuple20__T19, _unliftTuple20__T20]]: ...
        _unliftTuple21__T1 = typing.TypeVar('_unliftTuple21__T1')  # <T1>
        _unliftTuple21__T2 = typing.TypeVar('_unliftTuple21__T2')  # <T2>
        _unliftTuple21__T3 = typing.TypeVar('_unliftTuple21__T3')  # <T3>
        _unliftTuple21__T4 = typing.TypeVar('_unliftTuple21__T4')  # <T4>
        _unliftTuple21__T5 = typing.TypeVar('_unliftTuple21__T5')  # <T5>
        _unliftTuple21__T6 = typing.TypeVar('_unliftTuple21__T6')  # <T6>
        _unliftTuple21__T7 = typing.TypeVar('_unliftTuple21__T7')  # <T7>
        _unliftTuple21__T8 = typing.TypeVar('_unliftTuple21__T8')  # <T8>
        _unliftTuple21__T9 = typing.TypeVar('_unliftTuple21__T9')  # <T9>
        _unliftTuple21__T10 = typing.TypeVar('_unliftTuple21__T10')  # <T10>
        _unliftTuple21__T11 = typing.TypeVar('_unliftTuple21__T11')  # <T11>
        _unliftTuple21__T12 = typing.TypeVar('_unliftTuple21__T12')  # <T12>
        _unliftTuple21__T13 = typing.TypeVar('_unliftTuple21__T13')  # <T13>
        _unliftTuple21__T14 = typing.TypeVar('_unliftTuple21__T14')  # <T14>
        _unliftTuple21__T15 = typing.TypeVar('_unliftTuple21__T15')  # <T15>
        _unliftTuple21__T16 = typing.TypeVar('_unliftTuple21__T16')  # <T16>
        _unliftTuple21__T17 = typing.TypeVar('_unliftTuple21__T17')  # <T17>
        _unliftTuple21__T18 = typing.TypeVar('_unliftTuple21__T18')  # <T18>
        _unliftTuple21__T19 = typing.TypeVar('_unliftTuple21__T19')  # <T19>
        _unliftTuple21__T20 = typing.TypeVar('_unliftTuple21__T20')  # <T20>
        _unliftTuple21__T21 = typing.TypeVar('_unliftTuple21__T21')  # <T21>
        def unliftTuple21(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple21__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple21__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple21__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple21__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple21__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple21__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple21__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple21__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple21__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple21__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple21__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple21__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple21__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple21__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple21__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple21__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple21__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple21__T18], UnliftT19: 'Liftables.Unliftable'[_unliftTuple21__T19], UnliftT20: 'Liftables.Unliftable'[_unliftTuple21__T20], UnliftT21: 'Liftables.Unliftable'[_unliftTuple21__T21]) -> 'Liftables.Unliftable'[scala.Tuple21[_unliftTuple21__T1, _unliftTuple21__T2, _unliftTuple21__T3, _unliftTuple21__T4, _unliftTuple21__T5, _unliftTuple21__T6, _unliftTuple21__T7, _unliftTuple21__T8, _unliftTuple21__T9, _unliftTuple21__T10, _unliftTuple21__T11, _unliftTuple21__T12, _unliftTuple21__T13, _unliftTuple21__T14, _unliftTuple21__T15, _unliftTuple21__T16, _unliftTuple21__T17, _unliftTuple21__T18, _unliftTuple21__T19, _unliftTuple21__T20, _unliftTuple21__T21]]: ...
        _unliftTuple22__T1 = typing.TypeVar('_unliftTuple22__T1')  # <T1>
        _unliftTuple22__T2 = typing.TypeVar('_unliftTuple22__T2')  # <T2>
        _unliftTuple22__T3 = typing.TypeVar('_unliftTuple22__T3')  # <T3>
        _unliftTuple22__T4 = typing.TypeVar('_unliftTuple22__T4')  # <T4>
        _unliftTuple22__T5 = typing.TypeVar('_unliftTuple22__T5')  # <T5>
        _unliftTuple22__T6 = typing.TypeVar('_unliftTuple22__T6')  # <T6>
        _unliftTuple22__T7 = typing.TypeVar('_unliftTuple22__T7')  # <T7>
        _unliftTuple22__T8 = typing.TypeVar('_unliftTuple22__T8')  # <T8>
        _unliftTuple22__T9 = typing.TypeVar('_unliftTuple22__T9')  # <T9>
        _unliftTuple22__T10 = typing.TypeVar('_unliftTuple22__T10')  # <T10>
        _unliftTuple22__T11 = typing.TypeVar('_unliftTuple22__T11')  # <T11>
        _unliftTuple22__T12 = typing.TypeVar('_unliftTuple22__T12')  # <T12>
        _unliftTuple22__T13 = typing.TypeVar('_unliftTuple22__T13')  # <T13>
        _unliftTuple22__T14 = typing.TypeVar('_unliftTuple22__T14')  # <T14>
        _unliftTuple22__T15 = typing.TypeVar('_unliftTuple22__T15')  # <T15>
        _unliftTuple22__T16 = typing.TypeVar('_unliftTuple22__T16')  # <T16>
        _unliftTuple22__T17 = typing.TypeVar('_unliftTuple22__T17')  # <T17>
        _unliftTuple22__T18 = typing.TypeVar('_unliftTuple22__T18')  # <T18>
        _unliftTuple22__T19 = typing.TypeVar('_unliftTuple22__T19')  # <T19>
        _unliftTuple22__T20 = typing.TypeVar('_unliftTuple22__T20')  # <T20>
        _unliftTuple22__T21 = typing.TypeVar('_unliftTuple22__T21')  # <T21>
        _unliftTuple22__T22 = typing.TypeVar('_unliftTuple22__T22')  # <T22>
        def unliftTuple22(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple22__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple22__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple22__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple22__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple22__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple22__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple22__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple22__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple22__T9], UnliftT10: 'Liftables.Unliftable'[_unliftTuple22__T10], UnliftT11: 'Liftables.Unliftable'[_unliftTuple22__T11], UnliftT12: 'Liftables.Unliftable'[_unliftTuple22__T12], UnliftT13: 'Liftables.Unliftable'[_unliftTuple22__T13], UnliftT14: 'Liftables.Unliftable'[_unliftTuple22__T14], UnliftT15: 'Liftables.Unliftable'[_unliftTuple22__T15], UnliftT16: 'Liftables.Unliftable'[_unliftTuple22__T16], UnliftT17: 'Liftables.Unliftable'[_unliftTuple22__T17], UnliftT18: 'Liftables.Unliftable'[_unliftTuple22__T18], UnliftT19: 'Liftables.Unliftable'[_unliftTuple22__T19], UnliftT20: 'Liftables.Unliftable'[_unliftTuple22__T20], UnliftT21: 'Liftables.Unliftable'[_unliftTuple22__T21], UnliftT22: 'Liftables.Unliftable'[_unliftTuple22__T22]) -> 'Liftables.Unliftable'[scala.Tuple22[_unliftTuple22__T1, _unliftTuple22__T2, _unliftTuple22__T3, _unliftTuple22__T4, _unliftTuple22__T5, _unliftTuple22__T6, _unliftTuple22__T7, _unliftTuple22__T8, _unliftTuple22__T9, _unliftTuple22__T10, _unliftTuple22__T11, _unliftTuple22__T12, _unliftTuple22__T13, _unliftTuple22__T14, _unliftTuple22__T15, _unliftTuple22__T16, _unliftTuple22__T17, _unliftTuple22__T18, _unliftTuple22__T19, _unliftTuple22__T20, _unliftTuple22__T21, _unliftTuple22__T22]]: ...
        _unliftTuple3__T1 = typing.TypeVar('_unliftTuple3__T1')  # <T1>
        _unliftTuple3__T2 = typing.TypeVar('_unliftTuple3__T2')  # <T2>
        _unliftTuple3__T3 = typing.TypeVar('_unliftTuple3__T3')  # <T3>
        def unliftTuple3(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple3__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple3__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple3__T3]) -> 'Liftables.Unliftable'[scala.Tuple3[_unliftTuple3__T1, _unliftTuple3__T2, _unliftTuple3__T3]]: ...
        _unliftTuple4__T1 = typing.TypeVar('_unliftTuple4__T1')  # <T1>
        _unliftTuple4__T2 = typing.TypeVar('_unliftTuple4__T2')  # <T2>
        _unliftTuple4__T3 = typing.TypeVar('_unliftTuple4__T3')  # <T3>
        _unliftTuple4__T4 = typing.TypeVar('_unliftTuple4__T4')  # <T4>
        def unliftTuple4(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple4__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple4__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple4__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple4__T4]) -> 'Liftables.Unliftable'[scala.Tuple4[_unliftTuple4__T1, _unliftTuple4__T2, _unliftTuple4__T3, _unliftTuple4__T4]]: ...
        _unliftTuple5__T1 = typing.TypeVar('_unliftTuple5__T1')  # <T1>
        _unliftTuple5__T2 = typing.TypeVar('_unliftTuple5__T2')  # <T2>
        _unliftTuple5__T3 = typing.TypeVar('_unliftTuple5__T3')  # <T3>
        _unliftTuple5__T4 = typing.TypeVar('_unliftTuple5__T4')  # <T4>
        _unliftTuple5__T5 = typing.TypeVar('_unliftTuple5__T5')  # <T5>
        def unliftTuple5(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple5__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple5__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple5__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple5__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple5__T5]) -> 'Liftables.Unliftable'[scala.Tuple5[_unliftTuple5__T1, _unliftTuple5__T2, _unliftTuple5__T3, _unliftTuple5__T4, _unliftTuple5__T5]]: ...
        _unliftTuple6__T1 = typing.TypeVar('_unliftTuple6__T1')  # <T1>
        _unliftTuple6__T2 = typing.TypeVar('_unliftTuple6__T2')  # <T2>
        _unliftTuple6__T3 = typing.TypeVar('_unliftTuple6__T3')  # <T3>
        _unliftTuple6__T4 = typing.TypeVar('_unliftTuple6__T4')  # <T4>
        _unliftTuple6__T5 = typing.TypeVar('_unliftTuple6__T5')  # <T5>
        _unliftTuple6__T6 = typing.TypeVar('_unliftTuple6__T6')  # <T6>
        def unliftTuple6(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple6__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple6__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple6__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple6__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple6__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple6__T6]) -> 'Liftables.Unliftable'[scala.Tuple6[_unliftTuple6__T1, _unliftTuple6__T2, _unliftTuple6__T3, _unliftTuple6__T4, _unliftTuple6__T5, _unliftTuple6__T6]]: ...
        _unliftTuple7__T1 = typing.TypeVar('_unliftTuple7__T1')  # <T1>
        _unliftTuple7__T2 = typing.TypeVar('_unliftTuple7__T2')  # <T2>
        _unliftTuple7__T3 = typing.TypeVar('_unliftTuple7__T3')  # <T3>
        _unliftTuple7__T4 = typing.TypeVar('_unliftTuple7__T4')  # <T4>
        _unliftTuple7__T5 = typing.TypeVar('_unliftTuple7__T5')  # <T5>
        _unliftTuple7__T6 = typing.TypeVar('_unliftTuple7__T6')  # <T6>
        _unliftTuple7__T7 = typing.TypeVar('_unliftTuple7__T7')  # <T7>
        def unliftTuple7(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple7__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple7__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple7__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple7__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple7__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple7__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple7__T7]) -> 'Liftables.Unliftable'[scala.Tuple7[_unliftTuple7__T1, _unliftTuple7__T2, _unliftTuple7__T3, _unliftTuple7__T4, _unliftTuple7__T5, _unliftTuple7__T6, _unliftTuple7__T7]]: ...
        _unliftTuple8__T1 = typing.TypeVar('_unliftTuple8__T1')  # <T1>
        _unliftTuple8__T2 = typing.TypeVar('_unliftTuple8__T2')  # <T2>
        _unliftTuple8__T3 = typing.TypeVar('_unliftTuple8__T3')  # <T3>
        _unliftTuple8__T4 = typing.TypeVar('_unliftTuple8__T4')  # <T4>
        _unliftTuple8__T5 = typing.TypeVar('_unliftTuple8__T5')  # <T5>
        _unliftTuple8__T6 = typing.TypeVar('_unliftTuple8__T6')  # <T6>
        _unliftTuple8__T7 = typing.TypeVar('_unliftTuple8__T7')  # <T7>
        _unliftTuple8__T8 = typing.TypeVar('_unliftTuple8__T8')  # <T8>
        def unliftTuple8(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple8__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple8__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple8__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple8__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple8__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple8__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple8__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple8__T8]) -> 'Liftables.Unliftable'[scala.Tuple8[_unliftTuple8__T1, _unliftTuple8__T2, _unliftTuple8__T3, _unliftTuple8__T4, _unliftTuple8__T5, _unliftTuple8__T6, _unliftTuple8__T7, _unliftTuple8__T8]]: ...
        _unliftTuple9__T1 = typing.TypeVar('_unliftTuple9__T1')  # <T1>
        _unliftTuple9__T2 = typing.TypeVar('_unliftTuple9__T2')  # <T2>
        _unliftTuple9__T3 = typing.TypeVar('_unliftTuple9__T3')  # <T3>
        _unliftTuple9__T4 = typing.TypeVar('_unliftTuple9__T4')  # <T4>
        _unliftTuple9__T5 = typing.TypeVar('_unliftTuple9__T5')  # <T5>
        _unliftTuple9__T6 = typing.TypeVar('_unliftTuple9__T6')  # <T6>
        _unliftTuple9__T7 = typing.TypeVar('_unliftTuple9__T7')  # <T7>
        _unliftTuple9__T8 = typing.TypeVar('_unliftTuple9__T8')  # <T8>
        _unliftTuple9__T9 = typing.TypeVar('_unliftTuple9__T9')  # <T9>
        def unliftTuple9(self, UnliftT1: 'Liftables.Unliftable'[_unliftTuple9__T1], UnliftT2: 'Liftables.Unliftable'[_unliftTuple9__T2], UnliftT3: 'Liftables.Unliftable'[_unliftTuple9__T3], UnliftT4: 'Liftables.Unliftable'[_unliftTuple9__T4], UnliftT5: 'Liftables.Unliftable'[_unliftTuple9__T5], UnliftT6: 'Liftables.Unliftable'[_unliftTuple9__T6], UnliftT7: 'Liftables.Unliftable'[_unliftTuple9__T7], UnliftT8: 'Liftables.Unliftable'[_unliftTuple9__T8], UnliftT9: 'Liftables.Unliftable'[_unliftTuple9__T9]) -> 'Liftables.Unliftable'[scala.Tuple9[_unliftTuple9__T1, _unliftTuple9__T2, _unliftTuple9__T3, _unliftTuple9__T4, _unliftTuple9__T5, _unliftTuple9__T6, _unliftTuple9__T7, _unliftTuple9__T8, _unliftTuple9__T9]]: ...
        def unliftType(self) -> 'Liftables.Unliftable'[Types.TypeApi]: ...
        def unliftUnit(self) -> 'Liftables.Unliftable'[scala.runtime.BoxedUnit]: ...

_PredefTypeCreator__T = typing.TypeVar('_PredefTypeCreator__T')  # <T>
class PredefTypeCreator(TypeCreator, typing.Generic[_PredefTypeCreator__T]):
    def __init__(self, copyIn: scala.Function1['Universe', 'TypeTags.TypeTag'[_PredefTypeCreator__T]]): ...
    _apply__U = typing.TypeVar('_apply__U', bound='Universe')  # <U>
    def apply(self, m: Mirror[_apply__U]) -> Types.TypeApi: ...

_Exprs__Expr__T = typing.TypeVar('_Exprs__Expr__T')  # <T>
_Exprs__ExprImpl__T = typing.TypeVar('_Exprs__ExprImpl__T')  # <T>
class Exprs:
    @staticmethod
    def $init$($this: 'Exprs') -> None: ...
    class Expr(scala.Equals, scala.Serializable, typing.Generic[_Exprs__Expr__T]):
        @staticmethod
        def $init$($this: 'Exprs.Expr') -> None: ...
        def actualType(self) -> Types.TypeApi: ...
        def canEqual(self, x: typing.Any) -> bool: ...
        def equals(self, x: typing.Any) -> bool: ...
        def hashCode(self) -> int: ...
        def mirror(self) -> Mirror: ...
        def splice(self) -> _Exprs__Expr__T: ...
        def staticType(self) -> Types.TypeApi: ...
        def toString(self) -> java.lang.String: ...
        def tree(self) -> 'Trees.TreeApi': ...
        def value(self) -> _Exprs__Expr__T: ...
    class Expr$(scala.Serializable):
        def __init__(self, $outer: 'Universe'): ...
        _apply__T = typing.TypeVar('_apply__T')  # <T>
        def apply(self, mirror: Mirror['Universe'], treec: TreeCreator, evidence$1: 'TypeTags.WeakTypeTag'[_apply__T]) -> 'Exprs.Expr'[_apply__T]: ...
        _unapply__T = typing.TypeVar('_unapply__T')  # <T>
        def unapply(self, expr: 'Exprs.Expr'[_unapply__T]) -> scala.Option['Trees.TreeApi']: ...
    class ExprImpl(scala.reflect.api.Exprs.Expr[_Exprs__ExprImpl__T], typing.Generic[_Exprs__ExprImpl__T]):
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe', mirror: Mirror, treec: TreeCreator, evidence$2: 'TypeTags.WeakTypeTag'[_Exprs__ExprImpl__T]): ...
        def actualType(self) -> Types.TypeApi: ...
        def canEqual(self, x: typing.Any) -> bool: ...
        def equals(self, x: typing.Any) -> bool: ...
        def hashCode(self) -> int: ...
        def mirror(self) -> Mirror: ...
        def splice(self) -> _Exprs__ExprImpl__T: ...
        def staticType(self) -> Types.TypeApi: ...
        def toString(self) -> java.lang.String: ...
        def tree(self) -> 'Trees.TreeApi': ...
        def treec(self) -> TreeCreator: ...
        def value(self) -> _Exprs__ExprImpl__T: ...

_Internals__InternalApi__DecoratorApi__SymbolDecoratorApi__T = typing.TypeVar('_Internals__InternalApi__DecoratorApi__SymbolDecoratorApi__T', bound='Symbols.SymbolApi')  # <T>
_Internals__InternalApi__DecoratorApi__TreeDecoratorApi__T = typing.TypeVar('_Internals__InternalApi__DecoratorApi__TreeDecoratorApi__T', bound='Trees.TreeApi')  # <T>
_Internals__InternalApi__DecoratorApi__TypeDecoratorApi__T = typing.TypeVar('_Internals__InternalApi__DecoratorApi__TypeDecoratorApi__T', bound=Types.TypeApi)  # <T>
_Internals__ReificationSupportApi__UnliftListElementwise__T = typing.TypeVar('_Internals__ReificationSupportApi__UnliftListElementwise__T')  # <T>
_Internals__ReificationSupportApi__UnliftListOfListsElementwise__T = typing.TypeVar('_Internals__ReificationSupportApi__UnliftListOfListsElementwise__T')  # <T>
class Internals:
    @staticmethod
    def $init$($this: 'Internals') -> None: ...
    def FreeTermSymbolTag(self) -> scala.reflect.ClassTag['Internals.FreeTermSymbolApi']: ...
    def FreeTypeSymbolTag(self) -> scala.reflect.ClassTag['Internals.FreeTypeSymbolApi']: ...
    def ReferenceToBoxed(self) -> 'Internals.ReferenceToBoxedExtractor': ...
    def ReferenceToBoxedTag(self) -> scala.reflect.ClassTag['Internals.ReferenceToBoxedApi']: ...
    def build(self) -> 'Internals.ReificationSupportApi': ...
    def compat(self) -> 'Internals.CompatApi': ...
    def internal(self) -> 'Internals.InternalApi': ...
    def mkImporter(self, from0: 'Universe') -> 'Internals.Importer': ...
    class CompatApi:
        @staticmethod
        def $init$($this: 'Internals.CompatApi') -> None: ...
        def existentialAbstraction(self, tparams: scala.collection.immutable.List['Symbols.SymbolApi'], tpe0: Types.TypeApi) -> Types.TypeApi: ...
        @typing.overload
        def intersectionType(self, tps: scala.collection.immutable.List[Types.TypeApi]) -> Types.TypeApi: ...
        @typing.overload
        def intersectionType(self, tps: scala.collection.immutable.List[Types.TypeApi], owner: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        _manifestToTypeTag__T = typing.TypeVar('_manifestToTypeTag__T')  # <T>
        def manifestToTypeTag(self, mirror: typing.Any, manifest: scala.reflect.Manifest[_manifestToTypeTag__T]) -> 'TypeTags.TypeTag'[_manifestToTypeTag__T]: ...
        def newScopeWith(self, elems: scala.collection.Seq['Symbols.SymbolApi']) -> 'Scopes.ScopeApi': ...
        def polyType(self, tparams: scala.collection.immutable.List['Symbols.SymbolApi'], tpe: Types.TypeApi) -> Types.TypeApi: ...
        @typing.overload
        def refinedType(self, parents: scala.collection.immutable.List[Types.TypeApi], owner: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        @typing.overload
        def refinedType(self, parents: scala.collection.immutable.List[Types.TypeApi], owner: 'Symbols.SymbolApi', decls: 'Scopes.ScopeApi', pos: Position) -> Types.TypeApi: ...
        def scala$reflect$api$Internals$CompatApi$_setter_$token_$eq(self, x$1: 'Internals.CompatToken') -> None: ...
        def singleType(self, pre: Types.TypeApi, sym: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        def token(self) -> 'Internals.CompatToken': ...
        def typeRef(self, pre: Types.TypeApi, sym: 'Symbols.SymbolApi', args: scala.collection.immutable.List[Types.TypeApi]) -> Types.TypeApi: ...
        _typeTagToManifest__T = typing.TypeVar('_typeTagToManifest__T')  # <T>
        def typeTagToManifest(self, mirror: typing.Any, tag: 'TypeTags.TypeTag'[_typeTagToManifest__T], evidence$2: scala.reflect.ClassTag[_typeTagToManifest__T]) -> scala.reflect.Manifest[_typeTagToManifest__T]: ...
        class CompatibleBuildApi:
            $outer: 'Internals.CompatApi' = ...
            def __init__(self, $outer: 'Internals.CompatApi', api: 'Internals.ReificationSupportApi'): ...
            def Ident(self, sym: 'Symbols.SymbolApi') -> 'Trees.IdentApi': ...
            def Select(self, qualifier: 'Trees.TreeApi', sym: 'Symbols.SymbolApi') -> 'Trees.SelectApi': ...
            def This(self, sym: 'Symbols.SymbolApi') -> 'Trees.TreeApi': ...
            def TypeTree(self, tp: Types.TypeApi) -> 'Trees.TypeTreeApi': ...
            def emptyValDef(self) -> 'Trees.ValDefApi': ...
            def flagsFromBits(self, bits: int) -> typing.Any: ...
            _setTypeSignature__S = typing.TypeVar('_setTypeSignature__S', bound='Symbols.SymbolApi')  # <S>
            def setTypeSignature(self, sym: _setTypeSignature__S, tpe: Types.TypeApi) -> _setTypeSignature__S: ...
        class CompatibleSymbol:
            $outer: 'Internals.CompatApi' = ...
            def __init__(self, $outer: 'Internals.CompatApi', symbol: 'Symbols.SymbolApi'): ...
            def asFreeTerm(self) -> 'Internals.FreeTermSymbolApi': ...
            def asFreeType(self) -> 'Internals.FreeTypeSymbolApi': ...
            def deSkolemize(self) -> 'Symbols.SymbolApi': ...
            def isErroneous(self) -> bool: ...
            def isFreeTerm(self) -> bool: ...
            def isFreeType(self) -> bool: ...
            def isLocal(self) -> bool: ...
            def isOverride(self) -> bool: ...
            def isSkolem(self) -> bool: ...
            def newClassSymbol(self, name: Names.TypeNameApi, pos: Position, flags: typing.Any) -> 'Symbols.ClassSymbolApi': ...
            def newClassSymbol$default$2(self) -> Position: ...
            def newClassSymbol$default$3(self) -> typing.Any: ...
            def newMethodSymbol(self, name: Names.TermNameApi, pos: Position, flags: typing.Any) -> 'Symbols.MethodSymbolApi': ...
            def newMethodSymbol$default$2(self) -> Position: ...
            def newMethodSymbol$default$3(self) -> typing.Any: ...
            def newModuleAndClassSymbol(self, name: Names.NameApi, pos: Position, flags: typing.Any) -> scala.Tuple2['Symbols.ModuleSymbolApi', 'Symbols.ClassSymbolApi']: ...
            def newModuleAndClassSymbol$default$2(self) -> Position: ...
            def newModuleAndClassSymbol$default$3(self) -> typing.Any: ...
            def newTermSymbol(self, name: Names.TermNameApi, pos: Position, flags: typing.Any) -> 'Symbols.TermSymbolApi': ...
            def newTermSymbol$default$2(self) -> Position: ...
            def newTermSymbol$default$3(self) -> typing.Any: ...
            def newTypeSymbol(self, name: Names.TypeNameApi, pos: Position, flags: typing.Any) -> 'Symbols.TypeSymbolApi': ...
            def newTypeSymbol$default$2(self) -> Position: ...
            def newTypeSymbol$default$3(self) -> typing.Any: ...
        class CompatibleTree:
            $outer: 'Internals.CompatApi' = ...
            def __init__(self, $outer: 'Internals.CompatApi', tree: 'Trees.TreeApi'): ...
            def freeTerms(self) -> scala.collection.immutable.List['Internals.FreeTermSymbolApi']: ...
            def freeTypes(self) -> scala.collection.immutable.List['Internals.FreeTypeSymbolApi']: ...
            def substituteSymbols(self, from_: scala.collection.immutable.List['Symbols.SymbolApi'], to: scala.collection.immutable.List['Symbols.SymbolApi']) -> 'Trees.TreeApi': ...
            def substituteThis(self, clazz: 'Symbols.SymbolApi', to: scala.Function0['Trees.TreeApi']) -> 'Trees.TreeApi': ...
            def substituteTypes(self, from_: scala.collection.immutable.List['Symbols.SymbolApi'], to: scala.collection.immutable.List[Types.TypeApi]) -> 'Trees.TreeApi': ...
    class CompatToken:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
    class FreeTermSymbolApi(scala.reflect.api.Symbols.TermSymbolApi):
        def origin(self) -> java.lang.String: ...
        def value(self) -> typing.Any: ...
    class FreeTypeSymbolApi(scala.reflect.api.Symbols.TypeSymbolApi):
        def origin(self) -> java.lang.String: ...
    class Importer:
        def importPosition(self, pos: Position) -> Position: ...
        def importSymbol(self, sym: 'Symbols.SymbolApi') -> 'Symbols.SymbolApi': ...
        def importTree(self, tree: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
        def importType(self, tpe: Types.TypeApi) -> Types.TypeApi: ...
        def reverse(self) -> 'Internals.Importer': ...
    class InternalApi:
        @staticmethod
        def $init$($this: 'Internals.InternalApi') -> None: ...
        def annotatedType(self, annotations: scala.collection.immutable.List[Annotations.AnnotationApi], underlying: Types.TypeApi) -> Types.AnnotatedTypeApi: ...
        def asFreeTerm(self, symbol: 'Symbols.SymbolApi') -> 'Internals.FreeTermSymbolApi': ...
        def asFreeType(self, symbol: 'Symbols.SymbolApi') -> 'Internals.FreeTypeSymbolApi': ...
        def boundedWildcardType(self, bounds: Types.TypeBoundsApi) -> Types.BoundedWildcardTypeApi: ...
        def classDef(self, sym: 'Symbols.SymbolApi', impl: 'Trees.TemplateApi') -> 'Trees.ClassDefApi': ...
        def classInfoType(self, parents: scala.collection.immutable.List[Types.TypeApi], decls: 'Scopes.ScopeApi', typeSymbol: 'Symbols.SymbolApi') -> Types.ClassInfoTypeApi: ...
        def constantType(self, value: Constants.ConstantApi) -> Types.ConstantTypeApi: ...
        def createImporter(self, from0: 'Universe') -> 'Internals.Importer': ...
        def deSkolemize(self, symbol: 'Symbols.SymbolApi') -> 'Symbols.SymbolApi': ...
        def decorators(self) -> 'Internals.InternalApi.DecoratorApi': ...
        @typing.overload
        def defDef(self, sym: 'Symbols.SymbolApi', rhs: scala.Function1[scala.collection.immutable.List[scala.collection.immutable.List['Symbols.SymbolApi']], 'Trees.TreeApi']) -> 'Trees.DefDefApi': ...
        @typing.overload
        def defDef(self, sym: 'Symbols.SymbolApi', vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], rhs: 'Trees.TreeApi') -> 'Trees.DefDefApi': ...
        @typing.overload
        def defDef(self, sym: 'Symbols.SymbolApi', mods: 'Trees.ModifiersApi', vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], rhs: 'Trees.TreeApi') -> 'Trees.DefDefApi': ...
        @typing.overload
        def defDef(self, sym: 'Symbols.SymbolApi', mods: 'Trees.ModifiersApi', rhs: 'Trees.TreeApi') -> 'Trees.DefDefApi': ...
        @typing.overload
        def defDef(self, sym: 'Symbols.SymbolApi', rhs: 'Trees.TreeApi') -> 'Trees.DefDefApi': ...
        def existentialAbstraction(self, tparams: scala.collection.immutable.List['Symbols.SymbolApi'], tpe0: Types.TypeApi) -> Types.TypeApi: ...
        def existentialType(self, quantified: scala.collection.immutable.List['Symbols.SymbolApi'], underlying: Types.TypeApi) -> Types.ExistentialTypeApi: ...
        def flags(self, symbol: 'Symbols.SymbolApi') -> typing.Any: ...
        def freeTerms(self, tree: 'Trees.TreeApi') -> scala.collection.immutable.List['Internals.FreeTermSymbolApi']: ...
        def freeTypes(self, tree: 'Trees.TreeApi') -> scala.collection.immutable.List['Internals.FreeTypeSymbolApi']: ...
        @typing.overload
        def fullyInitialize(self, scope: 'Scopes.ScopeApi') -> 'Scopes.ScopeApi': ...
        @typing.overload
        def fullyInitialize(self, symbol: 'Symbols.SymbolApi') -> 'Symbols.SymbolApi': ...
        @typing.overload
        def fullyInitialize(self, tp: Types.TypeApi) -> Types.TypeApi: ...
        def initialize(self, symbol: 'Symbols.SymbolApi') -> 'Symbols.SymbolApi': ...
        @typing.overload
        def intersectionType(self, tps: scala.collection.immutable.List[Types.TypeApi]) -> Types.TypeApi: ...
        @typing.overload
        def intersectionType(self, tps: scala.collection.immutable.List[Types.TypeApi], owner: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        def isErroneous(self, symbol: 'Symbols.SymbolApi') -> bool: ...
        def isFreeTerm(self, symbol: 'Symbols.SymbolApi') -> bool: ...
        def isFreeType(self, symbol: 'Symbols.SymbolApi') -> bool: ...
        def isSkolem(self, symbol: 'Symbols.SymbolApi') -> bool: ...
        def labelDef(self, sym: 'Symbols.SymbolApi', params: scala.collection.immutable.List['Symbols.SymbolApi'], rhs: 'Trees.TreeApi') -> 'Trees.LabelDefApi': ...
        _manifestToTypeTag__T = typing.TypeVar('_manifestToTypeTag__T')  # <T>
        def manifestToTypeTag(self, mirror: typing.Any, manifest: scala.reflect.Manifest[_manifestToTypeTag__T]) -> 'TypeTags.TypeTag'[_manifestToTypeTag__T]: ...
        def methodType(self, params: scala.collection.immutable.List['Symbols.SymbolApi'], resultType: Types.TypeApi) -> Types.MethodTypeApi: ...
        def moduleDef(self, sym: 'Symbols.SymbolApi', impl: 'Trees.TemplateApi') -> 'Trees.ModuleDefApi': ...
        def newClassSymbol(self, owner: 'Symbols.SymbolApi', name: Names.TypeNameApi, pos: Position, flags: typing.Any) -> 'Symbols.ClassSymbolApi': ...
        def newClassSymbol$default$3(self) -> Position: ...
        def newClassSymbol$default$4(self) -> typing.Any: ...
        def newFreeTerm(self, name: typing.Union[java.lang.String, str], value: scala.Function0[typing.Any], flags: typing.Any, origin: typing.Union[java.lang.String, str]) -> 'Internals.FreeTermSymbolApi': ...
        def newFreeTerm$default$3(self) -> typing.Any: ...
        def newFreeTerm$default$4(self) -> java.lang.String: ...
        def newFreeType(self, name: typing.Union[java.lang.String, str], flags: typing.Any, origin: typing.Union[java.lang.String, str]) -> 'Internals.FreeTypeSymbolApi': ...
        def newFreeType$default$2(self) -> typing.Any: ...
        def newFreeType$default$3(self) -> java.lang.String: ...
        def newMethodSymbol(self, owner: 'Symbols.SymbolApi', name: Names.TermNameApi, pos: Position, flags: typing.Any) -> 'Symbols.MethodSymbolApi': ...
        def newMethodSymbol$default$3(self) -> Position: ...
        def newMethodSymbol$default$4(self) -> typing.Any: ...
        def newModuleAndClassSymbol(self, owner: 'Symbols.SymbolApi', name: Names.NameApi, pos: Position, flags: typing.Any) -> scala.Tuple2['Symbols.ModuleSymbolApi', 'Symbols.ClassSymbolApi']: ...
        def newModuleAndClassSymbol$default$3(self) -> Position: ...
        def newModuleAndClassSymbol$default$4(self) -> typing.Any: ...
        def newScopeWith(self, elems: scala.collection.Seq['Symbols.SymbolApi']) -> 'Scopes.ScopeApi': ...
        def newTermSymbol(self, owner: 'Symbols.SymbolApi', name: Names.TermNameApi, pos: Position, flags: typing.Any) -> 'Symbols.TermSymbolApi': ...
        def newTermSymbol$default$3(self) -> Position: ...
        def newTermSymbol$default$4(self) -> typing.Any: ...
        def newTypeSymbol(self, owner: 'Symbols.SymbolApi', name: Names.TypeNameApi, pos: Position, flags: typing.Any) -> 'Symbols.TypeSymbolApi': ...
        def newTypeSymbol$default$3(self) -> Position: ...
        def newTypeSymbol$default$4(self) -> typing.Any: ...
        def nullaryMethodType(self, resultType: Types.TypeApi) -> Types.NullaryMethodTypeApi: ...
        def polyType(self, tparams: scala.collection.immutable.List['Symbols.SymbolApi'], tpe: Types.TypeApi) -> Types.PolyTypeApi: ...
        @typing.overload
        def refinedType(self, parents: scala.collection.immutable.List[Types.TypeApi], decls: 'Scopes.ScopeApi') -> Types.RefinedTypeApi: ...
        @typing.overload
        def refinedType(self, parents: scala.collection.immutable.List[Types.TypeApi], decls: 'Scopes.ScopeApi', clazz: 'Symbols.SymbolApi') -> Types.RefinedTypeApi: ...
        @typing.overload
        def refinedType(self, parents: scala.collection.immutable.List[Types.TypeApi], owner: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        @typing.overload
        def refinedType(self, parents: scala.collection.immutable.List[Types.TypeApi], owner: 'Symbols.SymbolApi', decls: 'Scopes.ScopeApi') -> Types.TypeApi: ...
        @typing.overload
        def refinedType(self, parents: scala.collection.immutable.List[Types.TypeApi], owner: 'Symbols.SymbolApi', decls: 'Scopes.ScopeApi', pos: Position) -> Types.TypeApi: ...
        def reificationSupport(self) -> 'Internals.ReificationSupportApi': ...
        def singleType(self, pre: Types.TypeApi, sym: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        def substituteSymbols(self, tree: 'Trees.TreeApi', from_: scala.collection.immutable.List['Symbols.SymbolApi'], to: scala.collection.immutable.List['Symbols.SymbolApi']) -> 'Trees.TreeApi': ...
        def substituteThis(self, tree: 'Trees.TreeApi', clazz: 'Symbols.SymbolApi', to: scala.Function0['Trees.TreeApi']) -> 'Trees.TreeApi': ...
        def substituteTypes(self, tree: 'Trees.TreeApi', from_: scala.collection.immutable.List['Symbols.SymbolApi'], to: scala.collection.immutable.List[Types.TypeApi]) -> 'Trees.TreeApi': ...
        def superType(self, thistpe: Types.TypeApi, supertpe: Types.TypeApi) -> Types.TypeApi: ...
        def thisType(self, sym: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        def typeBounds(self, lo: Types.TypeApi, hi: Types.TypeApi) -> Types.TypeBoundsApi: ...
        @typing.overload
        def typeDef(self, sym: 'Symbols.SymbolApi') -> 'Trees.TypeDefApi': ...
        @typing.overload
        def typeDef(self, sym: 'Symbols.SymbolApi', rhs: 'Trees.TreeApi') -> 'Trees.TypeDefApi': ...
        def typeRef(self, pre: Types.TypeApi, sym: 'Symbols.SymbolApi', args: scala.collection.immutable.List[Types.TypeApi]) -> Types.TypeApi: ...
        _typeTagToManifest__T = typing.TypeVar('_typeTagToManifest__T')  # <T>
        def typeTagToManifest(self, mirror: typing.Any, tag: 'TypeTags.TypeTag'[_typeTagToManifest__T], evidence$1: scala.reflect.ClassTag[_typeTagToManifest__T]) -> scala.reflect.Manifest[_typeTagToManifest__T]: ...
        @typing.overload
        def valDef(self, sym: 'Symbols.SymbolApi') -> 'Trees.ValDefApi': ...
        @typing.overload
        def valDef(self, sym: 'Symbols.SymbolApi', rhs: 'Trees.TreeApi') -> 'Trees.ValDefApi': ...
        class DecoratorApi:
            @staticmethod
            def $init$($this: 'Internals.InternalApi.DecoratorApi') -> None: ...
            _symbolDecorator__T = typing.TypeVar('_symbolDecorator__T', bound='Symbols.SymbolApi')  # <T>
            def symbolDecorator(self, symbol: _symbolDecorator__T) -> 'Internals.InternalApi.DecoratorApi.SymbolDecoratorApi': ...
            _treeDecorator__T = typing.TypeVar('_treeDecorator__T', bound='Trees.TreeApi')  # <T>
            def treeDecorator(self, tree: _treeDecorator__T) -> 'Internals.InternalApi.DecoratorApi.TreeDecoratorApi': ...
            _typeDecorator__T = typing.TypeVar('_typeDecorator__T', bound=Types.TypeApi)  # <T>
            def typeDecorator(self, tp: _typeDecorator__T) -> 'Internals.InternalApi.DecoratorApi.TypeDecoratorApi': ...
            class SymbolDecoratorApi(typing.Generic[_Internals__InternalApi__DecoratorApi__SymbolDecoratorApi__T]):
                $outer: 'Internals.InternalApi.DecoratorApi' = ...
                def __init__(self, $outer: 'Internals.InternalApi.DecoratorApi', symbol: _Internals__InternalApi__DecoratorApi__SymbolDecoratorApi__T): ...
                def asFreeTerm(self) -> 'Internals.FreeTermSymbolApi': ...
                def asFreeType(self) -> 'Internals.FreeTypeSymbolApi': ...
                def deSkolemize(self) -> 'Symbols.SymbolApi': ...
                def flags(self) -> typing.Any: ...
                def fullyInitialize(self) -> _Internals__InternalApi__DecoratorApi__SymbolDecoratorApi__T: ...
                def initialize(self) -> _Internals__InternalApi__DecoratorApi__SymbolDecoratorApi__T: ...
                def isErroneous(self) -> bool: ...
                def isFreeTerm(self) -> bool: ...
                def isFreeType(self) -> bool: ...
                def isSkolem(self) -> bool: ...
                def newClassSymbol(self, name: Names.TypeNameApi, pos: Position, flags: typing.Any) -> 'Symbols.ClassSymbolApi': ...
                def newClassSymbol$default$2(self) -> Position: ...
                def newClassSymbol$default$3(self) -> typing.Any: ...
                def newMethodSymbol(self, name: Names.TermNameApi, pos: Position, flags: typing.Any) -> 'Symbols.MethodSymbolApi': ...
                def newMethodSymbol$default$2(self) -> Position: ...
                def newMethodSymbol$default$3(self) -> typing.Any: ...
                def newModuleAndClassSymbol(self, name: Names.NameApi, pos: Position, flags: typing.Any) -> scala.Tuple2['Symbols.ModuleSymbolApi', 'Symbols.ClassSymbolApi']: ...
                def newModuleAndClassSymbol$default$2(self) -> Position: ...
                def newModuleAndClassSymbol$default$3(self) -> typing.Any: ...
                def newTermSymbol(self, name: Names.TermNameApi, pos: Position, flags: typing.Any) -> 'Symbols.TermSymbolApi': ...
                def newTermSymbol$default$2(self) -> Position: ...
                def newTermSymbol$default$3(self) -> typing.Any: ...
                def newTypeSymbol(self, name: Names.TypeNameApi, pos: Position, flags: typing.Any) -> 'Symbols.TypeSymbolApi': ...
                def newTypeSymbol$default$2(self) -> Position: ...
                def newTypeSymbol$default$3(self) -> typing.Any: ...
                def symbol(self) -> _Internals__InternalApi__DecoratorApi__SymbolDecoratorApi__T: ...
            class TreeDecoratorApi(typing.Generic[_Internals__InternalApi__DecoratorApi__TreeDecoratorApi__T]):
                $outer: 'Internals.InternalApi.DecoratorApi' = ...
                def __init__(self, $outer: 'Internals.InternalApi.DecoratorApi', tree: _Internals__InternalApi__DecoratorApi__TreeDecoratorApi__T): ...
                def freeTerms(self) -> scala.collection.immutable.List['Internals.FreeTermSymbolApi']: ...
                def freeTypes(self) -> scala.collection.immutable.List['Internals.FreeTypeSymbolApi']: ...
                def substituteSymbols(self, from_: scala.collection.immutable.List['Symbols.SymbolApi'], to: scala.collection.immutable.List['Symbols.SymbolApi']) -> 'Trees.TreeApi': ...
                def substituteThis(self, clazz: 'Symbols.SymbolApi', to: scala.Function0['Trees.TreeApi']) -> 'Trees.TreeApi': ...
                def substituteTypes(self, from_: scala.collection.immutable.List['Symbols.SymbolApi'], to: scala.collection.immutable.List[Types.TypeApi]) -> 'Trees.TreeApi': ...
                def tree(self) -> _Internals__InternalApi__DecoratorApi__TreeDecoratorApi__T: ...
            class TypeDecoratorApi(typing.Generic[_Internals__InternalApi__DecoratorApi__TypeDecoratorApi__T]):
                $outer: 'Internals.InternalApi.DecoratorApi' = ...
                def __init__(self, $outer: 'Internals.InternalApi.DecoratorApi', tp: _Internals__InternalApi__DecoratorApi__TypeDecoratorApi__T): ...
                def fullyInitialize(self) -> _Internals__InternalApi__DecoratorApi__TypeDecoratorApi__T: ...
                def tp(self) -> _Internals__InternalApi__DecoratorApi__TypeDecoratorApi__T: ...
    class ReferenceToBoxedApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def ident(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class ReferenceToBoxedExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, ident: 'Trees.IdentApi') -> 'Internals.ReferenceToBoxedApi': ...
        def unapply(self, referenceToBoxed: 'Internals.ReferenceToBoxedApi') -> scala.Option['Trees.IdentApi']: ...
    class ReificationSupportApi:
        @staticmethod
        def $init$($this: 'Internals.ReificationSupportApi') -> None: ...
        def AnnotatedType(self, annotations: scala.collection.immutable.List[Annotations.AnnotationApi], underlying: Types.TypeApi) -> Types.AnnotatedTypeApi: ...
        def BoundedWildcardType(self, bounds: Types.TypeBoundsApi) -> Types.BoundedWildcardTypeApi: ...
        def ClassInfoType(self, parents: scala.collection.immutable.List[Types.TypeApi], decls: 'Scopes.ScopeApi', typeSymbol: 'Symbols.SymbolApi') -> Types.ClassInfoTypeApi: ...
        def ConstantType(self, value: Constants.ConstantApi) -> Types.ConstantTypeApi: ...
        def ExistentialType(self, quantified: scala.collection.immutable.List['Symbols.SymbolApi'], underlying: Types.TypeApi) -> Types.ExistentialTypeApi: ...
        def FlagsRepr(self) -> 'Internals.ReificationSupportApi.FlagsReprExtractor': ...
        def ImplicitParams(self) -> 'Internals.ReificationSupportApi.ImplicitParamsExtractor': ...
        def MethodType(self, params: scala.collection.immutable.List['Symbols.SymbolApi'], resultType: Types.TypeApi) -> Types.MethodTypeApi: ...
        def NullaryMethodType(self, resultType: Types.TypeApi) -> Types.NullaryMethodTypeApi: ...
        def PolyType(self, typeParams: scala.collection.immutable.List['Symbols.SymbolApi'], resultType: Types.TypeApi) -> Types.PolyTypeApi: ...
        def RefinedType(self, parents: scala.collection.immutable.List[Types.TypeApi], decls: 'Scopes.ScopeApi', typeSymbol: 'Symbols.SymbolApi') -> Types.RefinedTypeApi: ...
        def ScalaDot(self) -> 'Internals.ReificationSupportApi.ScalaDotExtractor': ...
        def SingleType(self, pre: Types.TypeApi, sym: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        def SuperType(self, thistpe: Types.TypeApi, supertpe: Types.TypeApi) -> Types.TypeApi: ...
        def SyntacticAnnotatedType(self) -> 'Internals.ReificationSupportApi.SyntacticAnnotatedTypeExtractor': ...
        def SyntacticApplied(self) -> 'Internals.ReificationSupportApi.SyntacticAppliedExtractor': ...
        def SyntacticAppliedType(self) -> 'Internals.ReificationSupportApi.SyntacticTypeAppliedExtractor': ...
        def SyntacticAssign(self) -> 'Internals.ReificationSupportApi.SyntacticAssignExtractor': ...
        def SyntacticBlock(self) -> 'Internals.ReificationSupportApi.SyntacticBlockExtractor': ...
        def SyntacticClassDef(self) -> 'Internals.ReificationSupportApi.SyntacticClassDefExtractor': ...
        def SyntacticCompoundType(self) -> 'Internals.ReificationSupportApi.SyntacticCompoundTypeExtractor': ...
        def SyntacticDefDef(self) -> 'Internals.ReificationSupportApi.SyntacticDefDefExtractor': ...
        def SyntacticEmptyTypeTree(self) -> 'Internals.ReificationSupportApi.SyntacticEmptyTypeTreeExtractor': ...
        def SyntacticExistentialType(self) -> 'Internals.ReificationSupportApi.SyntacticExistentialTypeExtractor': ...
        def SyntacticFilter(self) -> 'Internals.ReificationSupportApi.SyntacticFilterExtractor': ...
        def SyntacticFor(self) -> 'Internals.ReificationSupportApi.SyntacticForExtractor': ...
        def SyntacticForYield(self) -> 'Internals.ReificationSupportApi.SyntacticForExtractor': ...
        def SyntacticFunction(self) -> 'Internals.ReificationSupportApi.SyntacticFunctionExtractor': ...
        def SyntacticFunctionType(self) -> 'Internals.ReificationSupportApi.SyntacticFunctionTypeExtractor': ...
        def SyntacticImport(self) -> 'Internals.ReificationSupportApi.SyntacticImportExtractor': ...
        def SyntacticMatch(self) -> 'Internals.ReificationSupportApi.SyntacticMatchExtractor': ...
        def SyntacticNew(self) -> 'Internals.ReificationSupportApi.SyntacticNewExtractor': ...
        def SyntacticObjectDef(self) -> 'Internals.ReificationSupportApi.SyntacticObjectDefExtractor': ...
        def SyntacticPackageObjectDef(self) -> 'Internals.ReificationSupportApi.SyntacticPackageObjectDefExtractor': ...
        def SyntacticPartialFunction(self) -> 'Internals.ReificationSupportApi.SyntacticPartialFunctionExtractor': ...
        def SyntacticPatDef(self) -> 'Internals.ReificationSupportApi.SyntacticPatDefExtractor': ...
        def SyntacticSelectTerm(self) -> 'Internals.ReificationSupportApi.SyntacticSelectTermExtractor': ...
        def SyntacticSelectType(self) -> 'Internals.ReificationSupportApi.SyntacticSelectTypeExtractor': ...
        def SyntacticSingletonType(self) -> 'Internals.ReificationSupportApi.SyntacitcSingletonTypeExtractor': ...
        def SyntacticTermIdent(self) -> 'Internals.ReificationSupportApi.SyntacticTermIdentExtractor': ...
        def SyntacticTraitDef(self) -> 'Internals.ReificationSupportApi.SyntacticTraitDefExtractor': ...
        def SyntacticTry(self) -> 'Internals.ReificationSupportApi.SyntacticTryExtractor': ...
        def SyntacticTuple(self) -> 'Internals.ReificationSupportApi.SyntacticTupleExtractor': ...
        def SyntacticTupleType(self) -> 'Internals.ReificationSupportApi.SyntacticTupleExtractor': ...
        def SyntacticTypeApplied(self) -> 'Internals.ReificationSupportApi.SyntacticTypeAppliedExtractor': ...
        def SyntacticTypeIdent(self) -> 'Internals.ReificationSupportApi.SyntacticTypeIdentExtractor': ...
        def SyntacticTypeProjection(self) -> 'Internals.ReificationSupportApi.SyntacticTypeProjectionExtractor': ...
        def SyntacticValDef(self) -> 'Internals.ReificationSupportApi.SyntacticValDefExtractor': ...
        def SyntacticValEq(self) -> 'Internals.ReificationSupportApi.SyntacticValEqExtractor': ...
        def SyntacticValFrom(self) -> 'Internals.ReificationSupportApi.SyntacticValFromExtractor': ...
        def SyntacticVarDef(self) -> 'Internals.ReificationSupportApi.SyntacticValDefExtractor': ...
        def ThisType(self, sym: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        def TypeBounds(self, lo: Types.TypeApi, hi: Types.TypeApi) -> Types.TypeBoundsApi: ...
        def TypeRef(self, pre: Types.TypeApi, sym: 'Symbols.SymbolApi', args: scala.collection.immutable.List[Types.TypeApi]) -> Types.TypeApi: ...
        def freshTermName(self, prefix: typing.Union[java.lang.String, str]) -> Names.TermNameApi: ...
        def freshTypeName(self, prefix: typing.Union[java.lang.String, str]) -> Names.TypeNameApi: ...
        @typing.overload
        def mkAnnotation(self, trees: scala.collection.immutable.List['Trees.TreeApi']) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        @typing.overload
        def mkAnnotation(self, tree: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
        @typing.overload
        def mkEarlyDef(self, defns: scala.collection.immutable.List['Trees.TreeApi']) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        @typing.overload
        def mkEarlyDef(self, defn: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
        def mkIdent(self, sym: 'Symbols.SymbolApi') -> 'Trees.IdentApi': ...
        @typing.overload
        def mkPackageStat(self, stats: scala.collection.immutable.List['Trees.TreeApi']) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        @typing.overload
        def mkPackageStat(self, stat: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
        def mkRefTree(self, qual: 'Trees.TreeApi', sym: 'Symbols.SymbolApi') -> 'Trees.TreeApi': ...
        @typing.overload
        def mkRefineStat(self, stats: scala.collection.immutable.List['Trees.TreeApi']) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        @typing.overload
        def mkRefineStat(self, stat: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
        def mkSelect(self, qualifier: 'Trees.TreeApi', sym: 'Symbols.SymbolApi') -> 'Trees.SelectApi': ...
        def mkThis(self, sym: 'Symbols.SymbolApi') -> 'Trees.TreeApi': ...
        def mkTypeTree(self, tp: Types.TypeApi) -> 'Trees.TypeTreeApi': ...
        def newFreeTerm(self, name: typing.Union[java.lang.String, str], value: scala.Function0[typing.Any], flags: typing.Any, origin: typing.Union[java.lang.String, str]) -> 'Internals.FreeTermSymbolApi': ...
        def newFreeTerm$default$3(self) -> typing.Any: ...
        def newFreeTerm$default$4(self) -> java.lang.String: ...
        def newFreeType(self, name: typing.Union[java.lang.String, str], flags: typing.Any, origin: typing.Union[java.lang.String, str]) -> 'Internals.FreeTypeSymbolApi': ...
        def newFreeType$default$2(self) -> typing.Any: ...
        def newFreeType$default$3(self) -> java.lang.String: ...
        def newNestedSymbol(self, owner: 'Symbols.SymbolApi', name: Names.NameApi, pos: Position, flags: typing.Any, isClass: bool) -> 'Symbols.SymbolApi': ...
        def newScopeWith(self, elems: scala.collection.Seq['Symbols.SymbolApi']) -> 'Scopes.ScopeApi': ...
        def selectOverloadedMethod(self, owner: 'Symbols.SymbolApi', name: typing.Union[java.lang.String, str], index: int) -> 'Symbols.MethodSymbolApi': ...
        def selectTerm(self, owner: 'Symbols.SymbolApi', name: typing.Union[java.lang.String, str]) -> 'Symbols.TermSymbolApi': ...
        def selectType(self, owner: 'Symbols.SymbolApi', name: typing.Union[java.lang.String, str]) -> 'Symbols.TypeSymbolApi': ...
        _setAnnotations__S = typing.TypeVar('_setAnnotations__S', bound='Symbols.SymbolApi')  # <S>
        def setAnnotations(self, sym: _setAnnotations__S, annots: scala.collection.immutable.List[Annotations.AnnotationApi]) -> _setAnnotations__S: ...
        _setInfo__S = typing.TypeVar('_setInfo__S', bound='Symbols.SymbolApi')  # <S>
        def setInfo(self, sym: _setInfo__S, tpe: Types.TypeApi) -> _setInfo__S: ...
        _setSymbol__T = typing.TypeVar('_setSymbol__T', bound='Trees.TreeApi')  # <T>
        def setSymbol(self, tree: _setSymbol__T, sym: 'Symbols.SymbolApi') -> _setSymbol__T: ...
        _setType__T = typing.TypeVar('_setType__T', bound='Trees.TreeApi')  # <T>
        def setType(self, tree: _setType__T, tpe: Types.TypeApi) -> _setType__T: ...
        def thisPrefix(self, sym: 'Symbols.SymbolApi') -> Types.TypeApi: ...
        def toStats(self, tree: 'Trees.TreeApi') -> scala.collection.immutable.List['Trees.TreeApi']: ...
        class FlagsReprExtractor:
            def apply(self, value: int) -> typing.Any: ...
            def unapply(self, flags: int) -> scala.Some[typing.Any]: ...
        class ImplicitParamsExtractor:
            def apply(self, paramss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']], implparams: scala.collection.immutable.List['Trees.TreeApi']) -> scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']]: ...
            def unapply(self, vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']]) -> scala.Some[scala.Tuple2[scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], scala.collection.immutable.List['Trees.ValDefApi']]]: ...
        class ScalaDotExtractor:
            def apply(self, name: Names.NameApi) -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[Names.NameApi]: ...
        class SyntacitcSingletonTypeExtractor:
            def apply(self, tree: 'Trees.TreeApi') -> 'Trees.SingletonTypeTreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option['Trees.TreeApi']: ...
        class SyntacticAnnotatedTypeExtractor:
            def apply(self, tpt: 'Trees.TreeApi', annot: 'Trees.TreeApi') -> 'Trees.AnnotatedApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
        class SyntacticAppliedExtractor:
            def apply(self, tree: 'Trees.TreeApi', argss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']]) -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Some[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']]]]: ...
        class SyntacticAssignExtractor:
            def apply(self, lhs: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
        class SyntacticBlockExtractor:
            def apply(self, stats: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.collection.immutable.List['Trees.TreeApi']]: ...
        class SyntacticClassDefExtractor:
            def apply(self, mods: 'Trees.ModifiersApi', name: Names.TypeNameApi, tparams: scala.collection.immutable.List['Trees.TreeApi'], constrMods: 'Trees.ModifiersApi', vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']], earlyDefs: scala.collection.immutable.List['Trees.TreeApi'], parents: scala.collection.immutable.List['Trees.TreeApi'], selfType: 'Trees.TreeApi', body: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.ClassDefApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple9['Trees.ModifiersApi', Names.TypeNameApi, scala.collection.immutable.List['Trees.TypeDefApi'], 'Trees.ModifiersApi', scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], scala.collection.immutable.List['Trees.TreeApi'], scala.collection.immutable.List['Trees.TreeApi'], 'Trees.ValDefApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
        class SyntacticCompoundTypeExtractor:
            def apply(self, parents: scala.collection.immutable.List['Trees.TreeApi'], defns: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.CompoundTypeTreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Trees.TreeApi'], scala.collection.immutable.List['Trees.TreeApi']]]: ...
        class SyntacticDefDefExtractor:
            def apply(self, mods: 'Trees.ModifiersApi', name: Names.TermNameApi, tparams: scala.collection.immutable.List['Trees.TreeApi'], vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']], tpt: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.DefDefApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple6['Trees.ModifiersApi', Names.TermNameApi, scala.collection.immutable.List['Trees.TypeDefApi'], scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], 'Trees.TreeApi', 'Trees.TreeApi']]: ...
        class SyntacticEmptyTypeTreeExtractor:
            def apply(self) -> 'Trees.TypeTreeApi': ...
            def unapply(self, tt: 'Trees.TypeTreeApi') -> bool: ...
        class SyntacticExistentialTypeExtractor:
            def apply(self, tpt: 'Trees.TreeApi', where: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.ExistentialTypeTreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.MemberDefApi']]]: ...
        class SyntacticFilterExtractor:
            def apply(self, test: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option['Trees.TreeApi']: ...
        class SyntacticForExtractor:
            def apply(self, enums: scala.collection.immutable.List['Trees.TreeApi'], body: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Trees.TreeApi'], 'Trees.TreeApi']]: ...
        class SyntacticFunctionExtractor:
            def apply(self, params: scala.collection.immutable.List['Trees.TreeApi'], body: 'Trees.TreeApi') -> 'Trees.FunctionApi': ...
            def unapply(self, tree: 'Trees.FunctionApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Trees.ValDefApi'], 'Trees.TreeApi']]: ...
        class SyntacticFunctionTypeExtractor:
            def apply(self, argtpes: scala.collection.immutable.List['Trees.TreeApi'], restpe: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Trees.TreeApi'], 'Trees.TreeApi']]: ...
        class SyntacticImportExtractor:
            def apply(self, expr: 'Trees.TreeApi', selectors: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.ImportApi': ...
            def unapply(self, imp: 'Trees.ImportApi') -> scala.Some[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
        class SyntacticMatchExtractor:
            def apply(self, scrutinee: 'Trees.TreeApi', cases: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.MatchApi': ...
            def unapply(self, tree: 'Trees.MatchApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.CaseDefApi']]]: ...
        class SyntacticNewExtractor:
            def apply(self, earlyDefs: scala.collection.immutable.List['Trees.TreeApi'], parents: scala.collection.immutable.List['Trees.TreeApi'], selfType: 'Trees.TreeApi', body: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple4[scala.collection.immutable.List['Trees.TreeApi'], scala.collection.immutable.List['Trees.TreeApi'], 'Trees.ValDefApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
        class SyntacticObjectDefExtractor:
            def apply(self, mods: 'Trees.ModifiersApi', name: Names.TermNameApi, earlyDefs: scala.collection.immutable.List['Trees.TreeApi'], parents: scala.collection.immutable.List['Trees.TreeApi'], selfType: 'Trees.TreeApi', body: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.ModuleDefApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple6['Trees.ModifiersApi', Names.TermNameApi, scala.collection.immutable.List['Trees.TreeApi'], scala.collection.immutable.List['Trees.TreeApi'], 'Trees.ValDefApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
        class SyntacticPackageObjectDefExtractor:
            def apply(self, name: Names.TermNameApi, earlyDefs: scala.collection.immutable.List['Trees.TreeApi'], parents: scala.collection.immutable.List['Trees.TreeApi'], selfType: 'Trees.TreeApi', body: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.PackageDefApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple5[Names.TermNameApi, scala.collection.immutable.List['Trees.TreeApi'], scala.collection.immutable.List['Trees.TreeApi'], 'Trees.ValDefApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
        class SyntacticPartialFunctionExtractor:
            def apply(self, cases: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.MatchApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.collection.immutable.List['Trees.CaseDefApi']]: ...
        class SyntacticPatDefExtractor:
            def apply(self, mods: 'Trees.ModifiersApi', pat: 'Trees.TreeApi', tpt: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> scala.collection.immutable.List['Trees.ValDefApi']: ...
        class SyntacticSelectTermExtractor:
            def apply(self, qual: 'Trees.TreeApi', name: Names.TermNameApi) -> 'Trees.SelectApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', Names.TermNameApi]]: ...
        class SyntacticSelectTypeExtractor:
            def apply(self, qual: 'Trees.TreeApi', name: Names.TypeNameApi) -> 'Trees.SelectApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', Names.TypeNameApi]]: ...
        class SyntacticTermIdentExtractor:
            def apply(self, name: Names.TermNameApi, isBackquoted: bool) -> 'Trees.IdentApi': ...
            def apply$default$2(self) -> bool: ...
            def unapply(self, id: 'Trees.IdentApi') -> scala.Option[scala.Tuple2[Names.TermNameApi, typing.Any]]: ...
        class SyntacticTraitDefExtractor:
            def apply(self, mods: 'Trees.ModifiersApi', name: Names.TypeNameApi, tparams: scala.collection.immutable.List['Trees.TreeApi'], earlyDefs: scala.collection.immutable.List['Trees.TreeApi'], parents: scala.collection.immutable.List['Trees.TreeApi'], selfType: 'Trees.TreeApi', body: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.ClassDefApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple7['Trees.ModifiersApi', Names.TypeNameApi, scala.collection.immutable.List['Trees.TypeDefApi'], scala.collection.immutable.List['Trees.TreeApi'], scala.collection.immutable.List['Trees.TreeApi'], 'Trees.ValDefApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
        class SyntacticTryExtractor:
            def apply(self, block: 'Trees.TreeApi', catches: scala.collection.immutable.List['Trees.TreeApi'], finalizer: 'Trees.TreeApi') -> 'Trees.TryApi': ...
            def unapply(self, tree: 'Trees.TryApi') -> scala.Option[scala.Tuple3['Trees.TreeApi', scala.collection.immutable.List['Trees.CaseDefApi'], 'Trees.TreeApi']]: ...
        class SyntacticTupleExtractor:
            def apply(self, args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.collection.immutable.List['Trees.TreeApi']]: ...
        class SyntacticTypeAppliedExtractor:
            def apply(self, tree: 'Trees.TreeApi', targs: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
        class SyntacticTypeIdentExtractor:
            def apply(self, name: Names.TypeNameApi) -> 'Trees.IdentApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[Names.TypeNameApi]: ...
        class SyntacticTypeProjectionExtractor:
            def apply(self, qual: 'Trees.TreeApi', name: Names.TypeNameApi) -> 'Trees.SelectFromTypeTreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', Names.TypeNameApi]]: ...
        class SyntacticValDefExtractor:
            def apply(self, mods: 'Trees.ModifiersApi', name: Names.TermNameApi, tpt: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.ValDefApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple4['Trees.ModifiersApi', Names.TermNameApi, 'Trees.TreeApi', 'Trees.TreeApi']]: ...
        class SyntacticValEqExtractor:
            def apply(self, pat: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
        class SyntacticValFromExtractor:
            def apply(self, pat: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
            def unapply(self, tree: 'Trees.TreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
        class UnliftListElementwise(typing.Generic[_Internals__ReificationSupportApi__UnliftListElementwise__T]):
            def unapply(self, lst: scala.collection.immutable.List['Trees.TreeApi']) -> scala.Option[scala.collection.immutable.List[_Internals__ReificationSupportApi__UnliftListElementwise__T]]: ...
        class UnliftListOfListsElementwise(typing.Generic[_Internals__ReificationSupportApi__UnliftListOfListsElementwise__T]):
            def unapply(self, lst: scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']]) -> scala.Option[scala.collection.immutable.List[scala.collection.immutable.List[_Internals__ReificationSupportApi__UnliftListOfListsElementwise__T]]]: ...

class JavaUniverse:
    @staticmethod
    def $init$($this: 'JavaUniverse') -> None: ...
    def RuntimeClassTag(self) -> scala.reflect.ClassTag[typing.Type[typing.Any]]: ...
    def runtimeMirror(self, cl: java.lang.ClassLoader) -> 'JavaUniverse.JavaMirror': ...
    def scala$reflect$api$JavaUniverse$_setter_$RuntimeClassTag_$eq(self, x$1: scala.reflect.ClassTag[typing.Type[typing.Any]]) -> None: ...
    class JavaMirror(scala.reflect.api.Mirrors.RuntimeMirror):
        @staticmethod
        def $init$($this: 'JavaUniverse.JavaMirror') -> None: ...
        def classLoader(self) -> java.lang.ClassLoader: ...
        def toString(self) -> java.lang.String: ...

class Mirrors:
    @staticmethod
    def $init$($this: 'Mirrors') -> None: ...
    def rootMirror(self) -> Mirror: ...
    class ClassMirror(scala.reflect.api.Mirrors.TemplateMirror):
        def reflectConstructor(self, constructor: 'Symbols.MethodSymbolApi') -> 'Mirrors.MethodMirror': ...
        @typing.overload
        def symbol(self) -> 'Symbols.ClassSymbolApi': ...
        @typing.overload
        def symbol(self) -> 'Symbols.SymbolApi': ...
    class FieldMirror:
        def bind(self, newReceiver: typing.Any) -> 'Mirrors.FieldMirror': ...
        def get(self) -> typing.Any: ...
        def receiver(self) -> typing.Any: ...
        def set(self, value: typing.Any) -> None: ...
        def symbol(self) -> 'Symbols.TermSymbolApi': ...
    class InstanceMirror:
        def instance(self) -> typing.Any: ...
        def reflectClass(self, cls: 'Symbols.ClassSymbolApi') -> 'Mirrors.ClassMirror': ...
        def reflectField(self, field: 'Symbols.TermSymbolApi') -> 'Mirrors.FieldMirror': ...
        def reflectMethod(self, method: 'Symbols.MethodSymbolApi') -> 'Mirrors.MethodMirror': ...
        def reflectModule(self, mod: 'Symbols.ModuleSymbolApi') -> 'Mirrors.ModuleMirror': ...
        def symbol(self) -> 'Symbols.ClassSymbolApi': ...
    class MethodMirror:
        def apply(self, args: scala.collection.Seq[typing.Any]) -> typing.Any: ...
        def bind(self, newReceiver: typing.Any) -> 'Mirrors.MethodMirror': ...
        def receiver(self) -> typing.Any: ...
        def symbol(self) -> 'Symbols.MethodSymbolApi': ...
    class ModuleMirror(scala.reflect.api.Mirrors.TemplateMirror):
        def instance(self) -> typing.Any: ...
        @typing.overload
        def symbol(self) -> 'Symbols.ModuleSymbolApi': ...
        @typing.overload
        def symbol(self) -> 'Symbols.SymbolApi': ...
    class ReflectiveMirror:
        _reflect__T = typing.TypeVar('_reflect__T')  # <T>
        def reflect(self, obj: _reflect__T, evidence$1: scala.reflect.ClassTag[_reflect__T]) -> 'Mirrors.InstanceMirror': ...
        def reflectClass(self, cls: 'Symbols.ClassSymbolApi') -> 'Mirrors.ClassMirror': ...
        def reflectModule(self, mod: 'Symbols.ModuleSymbolApi') -> 'Mirrors.ModuleMirror': ...
    class RuntimeClassApi: ...
    class RuntimeMirror(scala.reflect.api.Mirrors.ReflectiveMirror):
        def classSymbol(self, rtcls: typing.Any) -> 'Symbols.ClassSymbolApi': ...
        def moduleSymbol(self, rtcls: typing.Any) -> 'Symbols.ModuleSymbolApi': ...
        @typing.overload
        def runtimeClass(self, cls: 'Symbols.ClassSymbolApi') -> typing.Any: ...
        @typing.overload
        def runtimeClass(self, tpe: Types.TypeApi) -> typing.Any: ...
    class TemplateMirror:
        def isStatic(self) -> bool: ...
        def symbol(self) -> 'Symbols.SymbolApi': ...

class Quasiquotes:
    @staticmethod
    def $init$($this: 'Quasiquotes') -> None: ...
    class Quasiquote:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe', ctx: scala.StringContext): ...
        def cq(self) -> 'Quasiquotes.Quasiquote.cq.': ...
        def fq(self) -> 'Quasiquotes.Quasiquote.fq.': ...
        def pq(self) -> 'Quasiquotes.Quasiquote.pq.': ...
        def q(self) -> 'Quasiquotes.Quasiquote.q.': ...
        def tq(self) -> 'Quasiquotes.Quasiquote.tq.': ...
        class api:
            @staticmethod
            def $init$($this: 'Quasiquotes.Quasiquote.api') -> None: ...
        class cq$(scala.reflect.api.Quasiquotes.Quasiquote.api):
            def __init__(self, $outer: 'Quasiquotes.Quasiquote'): ...
        class fq$(scala.reflect.api.Quasiquotes.Quasiquote.api):
            def __init__(self, $outer: 'Quasiquotes.Quasiquote'): ...
        class pq$(scala.reflect.api.Quasiquotes.Quasiquote.api):
            def __init__(self, $outer: 'Quasiquotes.Quasiquote'): ...
        class q$(scala.reflect.api.Quasiquotes.Quasiquote.api):
            def __init__(self, $outer: 'Quasiquotes.Quasiquote'): ...
        class tq$(scala.reflect.api.Quasiquotes.Quasiquote.api):
            def __init__(self, $outer: 'Quasiquotes.Quasiquote'): ...

class Scopes:
    @staticmethod
    def $init$($this: 'Scopes') -> None: ...
    class MemberScopeApi(scala.reflect.api.Scopes.ScopeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def sorted(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def toString(self) -> java.lang.String: ...
    class ScopeApi(scala.collection.Iterable['Symbols.SymbolApi']):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...

class StandardDefinitions:
    @staticmethod
    def $init$($this: 'StandardDefinitions') -> None: ...
    def definitions(self) -> 'StandardDefinitions.DefinitionsApi': ...
    class DefinitionsApi(scala.reflect.api.StandardDefinitions.StandardTypes):
        @staticmethod
        def $init$($this: 'StandardDefinitions.DefinitionsApi') -> None: ...
        def AnyClass(self) -> 'Symbols.ClassSymbolApi': ...
        def AnyRefClass(self) -> 'Symbols.TypeSymbolApi': ...
        def AnyValClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ArrayClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ArrayModule(self) -> 'Symbols.ModuleSymbolApi': ...
        def ArrayModule_overloadedApply(self) -> 'Symbols.TermSymbolApi': ...
        def Array_apply(self) -> 'Symbols.TermSymbolApi': ...
        def Array_clone(self) -> 'Symbols.TermSymbolApi': ...
        def Array_length(self) -> 'Symbols.TermSymbolApi': ...
        def Array_update(self) -> 'Symbols.TermSymbolApi': ...
        def BooleanClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ByNameParamClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ByteClass(self) -> 'Symbols.ClassSymbolApi': ...
        def CharClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ClassClass(self) -> 'Symbols.ClassSymbolApi': ...
        def DoubleClass(self) -> 'Symbols.ClassSymbolApi': ...
        def FloatClass(self) -> 'Symbols.ClassSymbolApi': ...
        def FunctionClass(self) -> 'StandardDefinitions.DefinitionsApi.VarArityClassApi': ...
        def IntClass(self) -> 'Symbols.ClassSymbolApi': ...
        def JavaLangPackage(self) -> 'Symbols.ModuleSymbolApi': ...
        def JavaLangPackageClass(self) -> 'Symbols.ClassSymbolApi': ...
        def JavaRepeatedParamClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ListClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ListModule(self) -> 'Symbols.ModuleSymbolApi': ...
        def List_apply(self) -> 'Symbols.TermSymbolApi': ...
        def LongClass(self) -> 'Symbols.ClassSymbolApi': ...
        def NilModule(self) -> 'Symbols.ModuleSymbolApi': ...
        def NoneModule(self) -> 'Symbols.ModuleSymbolApi': ...
        def NothingClass(self) -> 'Symbols.ClassSymbolApi': ...
        def NullClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ObjectClass(self) -> 'Symbols.ClassSymbolApi': ...
        def OptionClass(self) -> 'Symbols.ClassSymbolApi': ...
        def PredefModule(self) -> 'Symbols.ModuleSymbolApi': ...
        def ProductClass(self) -> 'StandardDefinitions.DefinitionsApi.VarArityClassApi': ...
        def RepeatedParamClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ScalaNumericValueClasses(self) -> scala.collection.immutable.List['Symbols.ClassSymbolApi']: ...
        def ScalaPackage(self) -> 'Symbols.ModuleSymbolApi': ...
        def ScalaPackageClass(self) -> 'Symbols.ClassSymbolApi': ...
        def ScalaPrimitiveValueClasses(self) -> scala.collection.immutable.List['Symbols.ClassSymbolApi']: ...
        def ShortClass(self) -> 'Symbols.ClassSymbolApi': ...
        def SomeModule(self) -> 'Symbols.ModuleSymbolApi': ...
        def StringClass(self) -> 'Symbols.ClassSymbolApi': ...
        def TupleClass(self) -> 'StandardDefinitions.DefinitionsApi.VarArityClassApi': ...
        def UnitClass(self) -> 'Symbols.ClassSymbolApi': ...
        class VarArityClassApi(scala.Function1[typing.Any, 'Symbols.SymbolApi']):
            $outer: 'StandardDefinitions.DefinitionsApi' = ...
            def __init__(self, $outer: 'StandardDefinitions.DefinitionsApi'): ...
            _andThen__A = typing.TypeVar('_andThen__A')  # <A>
            def andThen(self, g: scala.Function1['Symbols.SymbolApi', _andThen__A]) -> scala.Function1[typing.Any, _andThen__A]: ...
            def apply$mcDD$sp(self, v1: float) -> float: ...
            def apply$mcDF$sp(self, v1: float) -> float: ...
            def apply$mcDI$sp(self, v1: int) -> float: ...
            def apply$mcDJ$sp(self, v1: int) -> float: ...
            def apply$mcFD$sp(self, v1: float) -> float: ...
            def apply$mcFF$sp(self, v1: float) -> float: ...
            def apply$mcFI$sp(self, v1: int) -> float: ...
            def apply$mcFJ$sp(self, v1: int) -> float: ...
            def apply$mcID$sp(self, v1: float) -> int: ...
            def apply$mcIF$sp(self, v1: float) -> int: ...
            def apply$mcII$sp(self, v1: int) -> int: ...
            def apply$mcIJ$sp(self, v1: int) -> int: ...
            def apply$mcJD$sp(self, v1: float) -> int: ...
            def apply$mcJF$sp(self, v1: float) -> int: ...
            def apply$mcJI$sp(self, v1: int) -> int: ...
            def apply$mcJJ$sp(self, v1: int) -> int: ...
            def apply$mcVD$sp(self, v1: float) -> None: ...
            def apply$mcVF$sp(self, v1: float) -> None: ...
            def apply$mcVI$sp(self, v1: int) -> None: ...
            def apply$mcVJ$sp(self, v1: int) -> None: ...
            def apply$mcZD$sp(self, v1: float) -> bool: ...
            def apply$mcZF$sp(self, v1: float) -> bool: ...
            def apply$mcZI$sp(self, v1: int) -> bool: ...
            def apply$mcZJ$sp(self, v1: int) -> bool: ...
            _compose__A = typing.TypeVar('_compose__A')  # <A>
            def compose(self, g: scala.Function1[_compose__A, typing.Any]) -> scala.Function1[_compose__A, 'Symbols.SymbolApi']: ...
            def seq(self) -> scala.collection.Seq['Symbols.ClassSymbolApi']: ...
            def toString(self) -> java.lang.String: ...
    class StandardTypes:
        def AnyRefTpe(self) -> Types.TypeApi: ...
        def AnyTpe(self) -> Types.TypeApi: ...
        def AnyValTpe(self) -> Types.TypeApi: ...
        def BooleanTpe(self) -> Types.TypeApi: ...
        def ByteTpe(self) -> Types.TypeApi: ...
        def CharTpe(self) -> Types.TypeApi: ...
        def DoubleTpe(self) -> Types.TypeApi: ...
        def FloatTpe(self) -> Types.TypeApi: ...
        def IntTpe(self) -> Types.TypeApi: ...
        def LongTpe(self) -> Types.TypeApi: ...
        def NothingTpe(self) -> Types.TypeApi: ...
        def NullTpe(self) -> Types.TypeApi: ...
        def ObjectTpe(self) -> Types.TypeApi: ...
        def ShortTpe(self) -> Types.TypeApi: ...
        def UnitTpe(self) -> Types.TypeApi: ...

class StandardNames:
    @staticmethod
    def $init$($this: 'StandardNames') -> None: ...
    def nme(self) -> 'StandardNames.TermNamesApi': ...
    def termNames(self) -> 'StandardNames.TermNamesApi': ...
    def tpnme(self) -> 'StandardNames.TypeNamesApi': ...
    def typeNames(self) -> 'StandardNames.TypeNamesApi': ...
    class NamesApi:
        def EMPTY(self) -> Names.NameApi: ...
        def ERROR(self) -> Names.NameApi: ...
        def PACKAGE(self) -> Names.NameApi: ...
        def WILDCARD(self) -> Names.NameApi: ...
    class TermNamesApi(scala.reflect.api.StandardNames.NamesApi):
        def CONSTRUCTOR(self) -> Names.TermNameApi: ...
        def EMPTY_PACKAGE_NAME(self) -> Names.TermNameApi: ...
        def LOCAL_SUFFIX_STRING(self) -> java.lang.String: ...
        def ROOTPKG(self) -> Names.TermNameApi: ...
    class TypeNamesApi(scala.reflect.api.StandardNames.NamesApi):
        def WILDCARD_STAR(self) -> Names.TypeNameApi: ...

class Symbols:
    @staticmethod
    def $init$($this: 'Symbols') -> None: ...
    def NoSymbol(self) -> 'Symbols.SymbolApi': ...
    class ClassSymbolApi(scala.reflect.api.Symbols.TypeSymbolApi):
        @staticmethod
        def $init$($this: 'Symbols.ClassSymbolApi') -> None: ...
        def asClass(self) -> 'Symbols.ClassSymbolApi': ...
        def baseClasses(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def isAbstractClass(self) -> bool: ...
        def isCaseClass(self) -> bool: ...
        def isClass(self) -> bool: ...
        def isDerivedValueClass(self) -> bool: ...
        def isNumeric(self) -> bool: ...
        def isPrimitive(self) -> bool: ...
        def isSealed(self) -> bool: ...
        def isTrait(self) -> bool: ...
        def knownDirectSubclasses(self) -> scala.collection.immutable.Set['Symbols.SymbolApi']: ...
        def module(self) -> 'Symbols.SymbolApi': ...
        def primaryConstructor(self) -> 'Symbols.SymbolApi': ...
        def selfType(self) -> Types.TypeApi: ...
        def superPrefix(self, supertpe: Types.TypeApi) -> Types.TypeApi: ...
        def thisPrefix(self) -> Types.TypeApi: ...
        def typeParams(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
    class MethodSymbolApi(scala.reflect.api.Symbols.TermSymbolApi):
        @staticmethod
        def $init$($this: 'Symbols.MethodSymbolApi') -> None: ...
        def asMethod(self) -> 'Symbols.MethodSymbolApi': ...
        def exceptions(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def isMethod(self) -> bool: ...
        def isPrimaryConstructor(self) -> bool: ...
        def isVarargs(self) -> bool: ...
        def paramLists(self) -> scala.collection.immutable.List[scala.collection.immutable.List['Symbols.SymbolApi']]: ...
        def paramss(self) -> scala.collection.immutable.List[scala.collection.immutable.List['Symbols.SymbolApi']]: ...
        def returnType(self) -> Types.TypeApi: ...
        def typeParams(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
    class ModuleSymbolApi(scala.reflect.api.Symbols.TermSymbolApi):
        @staticmethod
        def $init$($this: 'Symbols.ModuleSymbolApi') -> None: ...
        def asModule(self) -> 'Symbols.ModuleSymbolApi': ...
        def isModule(self) -> bool: ...
        def moduleClass(self) -> 'Symbols.SymbolApi': ...
    class SymbolApi:
        @staticmethod
        def $init$($this: 'Symbols.SymbolApi') -> None: ...
        def allOverriddenSymbols(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def alternatives(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def annotations(self) -> scala.collection.immutable.List[Annotations.AnnotationApi]: ...
        def asClass(self) -> 'Symbols.ClassSymbolApi': ...
        def asMethod(self) -> 'Symbols.MethodSymbolApi': ...
        def asModule(self) -> 'Symbols.ModuleSymbolApi': ...
        def asTerm(self) -> 'Symbols.TermSymbolApi': ...
        def asType(self) -> 'Symbols.TypeSymbolApi': ...
        def associatedFile(self) -> scala.reflect.io.AbstractFile: ...
        def companion(self) -> 'Symbols.SymbolApi': ...
        def companionSymbol(self) -> 'Symbols.SymbolApi': ...
        def filter(self, cond: scala.Function1['Symbols.SymbolApi', typing.Any]) -> 'Symbols.SymbolApi': ...
        def fullName(self) -> java.lang.String: ...
        def info(self) -> Types.TypeApi: ...
        def infoIn(self, site: Types.TypeApi) -> Types.TypeApi: ...
        def isAbstract(self) -> bool: ...
        def isAbstractOverride(self) -> bool: ...
        def isClass(self) -> bool: ...
        def isConstructor(self) -> bool: ...
        def isFinal(self) -> bool: ...
        def isImplementationArtifact(self) -> bool: ...
        def isImplicit(self) -> bool: ...
        def isJava(self) -> bool: ...
        def isJavaAnnotation(self) -> bool: ...
        def isJavaEnum(self) -> bool: ...
        def isMacro(self) -> bool: ...
        def isMethod(self) -> bool: ...
        def isModule(self) -> bool: ...
        def isModuleClass(self) -> bool: ...
        def isOverloadedMethod(self) -> bool: ...
        def isPackage(self) -> bool: ...
        def isPackageClass(self) -> bool: ...
        def isParameter(self) -> bool: ...
        def isPrivate(self) -> bool: ...
        def isPrivateThis(self) -> bool: ...
        def isProtected(self) -> bool: ...
        def isProtectedThis(self) -> bool: ...
        def isPublic(self) -> bool: ...
        def isSpecialized(self) -> bool: ...
        def isStatic(self) -> bool: ...
        def isSynthetic(self) -> bool: ...
        def isTerm(self) -> bool: ...
        def isType(self) -> bool: ...
        def map(self, f: scala.Function1['Symbols.SymbolApi', 'Symbols.SymbolApi']) -> 'Symbols.SymbolApi': ...
        def name(self) -> Names.NameApi: ...
        def orElse(self, alt: scala.Function0['Symbols.SymbolApi']) -> 'Symbols.SymbolApi': ...
        def overrides(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...
        def owner(self) -> 'Symbols.SymbolApi': ...
        def pos(self) -> Position: ...
        def privateWithin(self) -> 'Symbols.SymbolApi': ...
        def suchThat(self, cond: scala.Function1['Symbols.SymbolApi', typing.Any]) -> 'Symbols.SymbolApi': ...
        def typeSignature(self) -> Types.TypeApi: ...
        def typeSignatureIn(self, site: Types.TypeApi) -> Types.TypeApi: ...
    class TermSymbolApi(scala.reflect.api.Symbols.SymbolApi):
        @staticmethod
        def $init$($this: 'Symbols.TermSymbolApi') -> None: ...
        def accessed(self) -> 'Symbols.SymbolApi': ...
        def asTerm(self) -> 'Symbols.TermSymbolApi': ...
        def getter(self) -> 'Symbols.SymbolApi': ...
        def isAccessor(self) -> bool: ...
        def isByNameParam(self) -> bool: ...
        def isCaseAccessor(self) -> bool: ...
        def isGetter(self) -> bool: ...
        def isLazy(self) -> bool: ...
        def isOverloaded(self) -> bool: ...
        def isOverloadedMethod(self) -> bool: ...
        def isParamAccessor(self) -> bool: ...
        def isParamWithDefault(self) -> bool: ...
        def isSetter(self) -> bool: ...
        def isStable(self) -> bool: ...
        def isTerm(self) -> bool: ...
        def isVal(self) -> bool: ...
        def isVar(self) -> bool: ...
        def setter(self) -> 'Symbols.SymbolApi': ...
    class TypeSymbolApi(scala.reflect.api.Symbols.SymbolApi):
        @staticmethod
        def $init$($this: 'Symbols.TypeSymbolApi') -> None: ...
        def asType(self) -> 'Symbols.TypeSymbolApi': ...
        def isAbstractType(self) -> bool: ...
        def isAliasType(self) -> bool: ...
        def isContravariant(self) -> bool: ...
        def isCovariant(self) -> bool: ...
        def isExistential(self) -> bool: ...
        def isType(self) -> bool: ...
        def toType(self) -> Types.TypeApi: ...
        def toTypeConstructor(self) -> Types.TypeApi: ...
        def toTypeIn(self, site: Types.TypeApi) -> Types.TypeApi: ...
        def typeParams(self) -> scala.collection.immutable.List['Symbols.SymbolApi']: ...

class Trees:
    @staticmethod
    def $init$($this: 'Trees') -> None: ...
    def Alternative(self) -> 'Trees.AlternativeExtractor': ...
    def Annotated(self) -> 'Trees.AnnotatedExtractor': ...
    def AppliedTypeTree(self) -> 'Trees.AppliedTypeTreeExtractor': ...
    @typing.overload
    def Apply(self) -> 'Trees.ApplyExtractor': ...
    @typing.overload
    def Apply(self, sym: Symbols.SymbolApi, args: scala.collection.Seq['Trees.TreeApi']) -> 'Trees.TreeApi': ...
    def ApplyConstructor(self, tpt: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TreeApi': ...
    def Assign(self) -> 'Trees.AssignExtractor': ...
    def AssignOrNamedArg(self) -> 'Trees.AssignOrNamedArgExtractor': ...
    @typing.overload
    def Bind(self, sym: Symbols.SymbolApi, body: 'Trees.TreeApi') -> 'Trees.BindApi': ...
    @typing.overload
    def Bind(self) -> 'Trees.BindExtractor': ...
    @typing.overload
    def Block(self, stats: scala.collection.Seq['Trees.TreeApi']) -> 'Trees.BlockApi': ...
    @typing.overload
    def Block(self) -> 'Trees.BlockExtractor': ...
    @typing.overload
    def CaseDef(self, pat: 'Trees.TreeApi', body: 'Trees.TreeApi') -> 'Trees.CaseDefApi': ...
    @typing.overload
    def CaseDef(self) -> 'Trees.CaseDefExtractor': ...
    def ClassDef(self) -> 'Trees.ClassDefExtractor': ...
    def CompoundTypeTree(self) -> 'Trees.CompoundTypeTreeExtractor': ...
    def DefDef(self) -> 'Trees.DefDefExtractor': ...
    def EmptyTree(self) -> 'Trees.TreeApi': ...
    def ExistentialTypeTree(self) -> 'Trees.ExistentialTypeTreeExtractor': ...
    def Function(self) -> 'Trees.FunctionExtractor': ...
    @typing.overload
    def Ident(self, name: typing.Union[java.lang.String, str]) -> 'Trees.IdentApi': ...
    @typing.overload
    def Ident(self, sym: Symbols.SymbolApi) -> 'Trees.IdentApi': ...
    @typing.overload
    def Ident(self) -> 'Trees.IdentExtractor': ...
    def If(self) -> 'Trees.IfExtractor': ...
    def Import(self) -> 'Trees.ImportExtractor': ...
    def ImportSelector(self) -> 'Trees.ImportSelectorExtractor': ...
    def LabelDef(self) -> 'Trees.LabelDefExtractor': ...
    def Literal(self) -> 'Trees.LiteralExtractor': ...
    def Match(self) -> 'Trees.MatchExtractor': ...
    @typing.overload
    def Modifiers(self) -> 'Trees.ModifiersExtractor': ...
    @typing.overload
    def Modifiers(self, flags: typing.Any) -> 'Trees.ModifiersApi': ...
    @typing.overload
    def Modifiers(self, flags: typing.Any, privateWithin: Names.NameApi) -> 'Trees.ModifiersApi': ...
    def ModuleDef(self) -> 'Trees.ModuleDefExtractor': ...
    @typing.overload
    def New(self) -> 'Trees.NewExtractor': ...
    @typing.overload
    def New(self, sym: Symbols.SymbolApi, args: scala.collection.Seq['Trees.TreeApi']) -> 'Trees.TreeApi': ...
    @typing.overload
    def New(self, tpt: 'Trees.TreeApi', argss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']]) -> 'Trees.TreeApi': ...
    @typing.overload
    def New(self, tpe: Types.TypeApi, args: scala.collection.Seq['Trees.TreeApi']) -> 'Trees.TreeApi': ...
    def NoMods(self) -> 'Trees.ModifiersApi': ...
    def PackageDef(self) -> 'Trees.PackageDefExtractor': ...
    def RefTree(self) -> 'Trees.RefTreeExtractor': ...
    def Return(self) -> 'Trees.ReturnExtractor': ...
    @typing.overload
    def Select(self, qualifier: 'Trees.TreeApi', name: typing.Union[java.lang.String, str]) -> 'Trees.SelectApi': ...
    @typing.overload
    def Select(self, qualifier: 'Trees.TreeApi', sym: Symbols.SymbolApi) -> 'Trees.SelectApi': ...
    @typing.overload
    def Select(self) -> 'Trees.SelectExtractor': ...
    def SelectFromTypeTree(self) -> 'Trees.SelectFromTypeTreeExtractor': ...
    def SingletonTypeTree(self) -> 'Trees.SingletonTypeTreeExtractor': ...
    def Star(self) -> 'Trees.StarExtractor': ...
    @typing.overload
    def Super(self) -> 'Trees.SuperExtractor': ...
    @typing.overload
    def Super(self, sym: Symbols.SymbolApi, mix: Names.TypeNameApi) -> 'Trees.TreeApi': ...
    def Template(self) -> 'Trees.TemplateExtractor': ...
    @typing.overload
    def This(self) -> 'Trees.ThisExtractor': ...
    @typing.overload
    def This(self, sym: Symbols.SymbolApi) -> 'Trees.TreeApi': ...
    @typing.overload
    def Throw(self, tpe: Types.TypeApi, args: scala.collection.Seq['Trees.TreeApi']) -> 'Trees.ThrowApi': ...
    @typing.overload
    def Throw(self) -> 'Trees.ThrowExtractor': ...
    @typing.overload
    def Try(self, body: 'Trees.TreeApi', cases: scala.collection.Seq[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]) -> 'Trees.TryApi': ...
    @typing.overload
    def Try(self) -> 'Trees.TryExtractor': ...
    def TypeApply(self) -> 'Trees.TypeApplyExtractor': ...
    def TypeBoundsTree(self) -> 'Trees.TypeBoundsTreeExtractor': ...
    def TypeDef(self) -> 'Trees.TypeDefExtractor': ...
    @typing.overload
    def TypeTree(self, tp: Types.TypeApi) -> 'Trees.TypeTreeApi': ...
    @typing.overload
    def TypeTree(self) -> 'Trees.TypeTreeExtractor': ...
    def Typed(self) -> 'Trees.TypedExtractor': ...
    def UnApply(self) -> 'Trees.UnApplyExtractor': ...
    def ValDef(self) -> 'Trees.ValDefExtractor': ...
    def emptyValDef(self) -> 'Trees.ValDefApi': ...
    def itransform(self, transformer: 'Trees.Transformer', tree: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
    def itraverse(self, traverser: 'Trees.Traverser', tree: 'Trees.TreeApi') -> None: ...
    def newLazyTreeCopier(self) -> 'Trees.TreeCopierOps': ...
    def newStrictTreeCopier(self) -> 'Trees.TreeCopierOps': ...
    def noSelfType(self) -> 'Trees.ValDefApi': ...
    def pendingSuperCall(self) -> 'Trees.ApplyApi': ...
    def scala$reflect$api$Trees$_setter_$treeCopy_$eq(self, x$1: 'Trees.TreeCopierOps') -> None: ...
    def treeCopy(self) -> 'Trees.TreeCopierOps': ...
    def treeToString(self, tree: 'Trees.TreeApi') -> java.lang.String: ...
    def xtransform(self, transformer: 'Trees.Transformer', tree: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
    def xtraverse(self, traverser: 'Trees.Traverser', tree: 'Trees.TreeApi') -> None: ...
    class AlternativeApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
        def trees(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
    class AlternativeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, trees: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.AlternativeApi': ...
        def unapply(self, alternative: 'Trees.AlternativeApi') -> scala.Option[scala.collection.immutable.List['Trees.TreeApi']]: ...
    class AnnotatedApi(scala.reflect.api.Trees.TreeApi):
        def annot(self) -> 'Trees.TreeApi': ...
        def arg(self) -> 'Trees.TreeApi': ...
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
    class AnnotatedExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, annot: 'Trees.TreeApi', arg: 'Trees.TreeApi') -> 'Trees.AnnotatedApi': ...
        def unapply(self, annotated: 'Trees.AnnotatedApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
    class AppliedTypeTreeApi(scala.reflect.api.Trees.TypTreeApi):
        def args(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
        def tpt(self) -> 'Trees.TreeApi': ...
    class AppliedTypeTreeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, tpt: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.AppliedTypeTreeApi': ...
        def unapply(self, appliedTypeTree: 'Trees.AppliedTypeTreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
    class ApplyApi(scala.reflect.api.Trees.GenericApplyApi):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
    class ApplyExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, fun: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.ApplyApi': ...
        def unapply(self, apply: 'Trees.ApplyApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
    class AssignApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def lhs(self) -> 'Trees.TreeApi': ...
        def rhs(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class AssignExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, lhs: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.AssignApi': ...
        def unapply(self, assign: 'Trees.AssignApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
    class AssignOrNamedArgApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def lhs(self) -> 'Trees.TreeApi': ...
        def rhs(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class AssignOrNamedArgExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, lhs: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.AssignOrNamedArgApi': ...
        def unapply(self, assignOrNamedArg: 'Trees.AssignOrNamedArgApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
    class BindApi(scala.reflect.api.Trees.DefTreeApi):
        def body(self) -> 'Trees.TreeApi': ...
        def equals(self, that: typing.Any) -> bool: ...
        def name(self) -> Names.NameApi: ...
        def toString(self) -> java.lang.String: ...
    class BindExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, name: Names.NameApi, body: 'Trees.TreeApi') -> 'Trees.BindApi': ...
        def unapply(self, bind: 'Trees.BindApi') -> scala.Option[scala.Tuple2[Names.NameApi, 'Trees.TreeApi']]: ...
    class BlockApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def expr(self) -> 'Trees.TreeApi': ...
        def stats(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def toString(self) -> java.lang.String: ...
    class BlockExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, stats: scala.collection.immutable.List['Trees.TreeApi'], expr: 'Trees.TreeApi') -> 'Trees.BlockApi': ...
        def unapply(self, block: 'Trees.BlockApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Trees.TreeApi'], 'Trees.TreeApi']]: ...
    class CaseDefApi(scala.reflect.api.Trees.TreeApi):
        def body(self) -> 'Trees.TreeApi': ...
        def equals(self, that: typing.Any) -> bool: ...
        def guard(self) -> 'Trees.TreeApi': ...
        def pat(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class CaseDefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, pat: 'Trees.TreeApi', guard: 'Trees.TreeApi', body: 'Trees.TreeApi') -> 'Trees.CaseDefApi': ...
        def unapply(self, caseDef: 'Trees.CaseDefApi') -> scala.Option[scala.Tuple3['Trees.TreeApi', 'Trees.TreeApi', 'Trees.TreeApi']]: ...
    class ClassDefApi(scala.reflect.api.Trees.ImplDefApi):
        def equals(self, that: typing.Any) -> bool: ...
        def impl(self) -> 'Trees.TemplateApi': ...
        def mods(self) -> 'Trees.ModifiersApi': ...
        @typing.overload
        def name(self) -> Names.NameApi: ...
        @typing.overload
        def name(self) -> Names.TypeNameApi: ...
        def toString(self) -> java.lang.String: ...
        def tparams(self) -> scala.collection.immutable.List['Trees.TypeDefApi']: ...
    class ClassDefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, mods: 'Trees.ModifiersApi', name: Names.TypeNameApi, tparams: scala.collection.immutable.List['Trees.TypeDefApi'], impl: 'Trees.TemplateApi') -> 'Trees.ClassDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, impl: 'Trees.TemplateApi', token: Internals.CompatToken) -> 'Trees.ClassDefApi': ...
        def unapply(self, classDef: 'Trees.ClassDefApi') -> scala.Option[scala.Tuple4['Trees.ModifiersApi', Names.TypeNameApi, scala.collection.immutable.List['Trees.TypeDefApi'], 'Trees.TemplateApi']]: ...
    class CompoundTypeTreeApi(scala.reflect.api.Trees.TypTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def templ(self) -> 'Trees.TemplateApi': ...
        def toString(self) -> java.lang.String: ...
    class CompoundTypeTreeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, templ: 'Trees.TemplateApi') -> 'Trees.CompoundTypeTreeApi': ...
        def unapply(self, compoundTypeTree: 'Trees.CompoundTypeTreeApi') -> scala.Option['Trees.TemplateApi']: ...
    class DefDefApi(scala.reflect.api.Trees.ValOrDefDefApi):
        def equals(self, that: typing.Any) -> bool: ...
        def mods(self) -> 'Trees.ModifiersApi': ...
        @typing.overload
        def name(self) -> Names.NameApi: ...
        @typing.overload
        def name(self) -> Names.TermNameApi: ...
        def rhs(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
        def tparams(self) -> scala.collection.immutable.List['Trees.TypeDefApi']: ...
        def tpt(self) -> 'Trees.TreeApi': ...
        def vparamss(self) -> scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']]: ...
    class DefDefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, mods: 'Trees.ModifiersApi', name: Names.TermNameApi, tparams: scala.collection.immutable.List['Trees.TypeDefApi'], vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], tpt: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.DefDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, rhs: scala.Function1[scala.collection.immutable.List[scala.collection.immutable.List[Symbols.SymbolApi]], 'Trees.TreeApi'], token: Internals.CompatToken) -> 'Trees.DefDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], rhs: 'Trees.TreeApi', token: Internals.CompatToken) -> 'Trees.DefDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, mods: 'Trees.ModifiersApi', vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], rhs: 'Trees.TreeApi', token: Internals.CompatToken) -> 'Trees.DefDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, mods: 'Trees.ModifiersApi', rhs: 'Trees.TreeApi', token: Internals.CompatToken) -> 'Trees.DefDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, rhs: 'Trees.TreeApi', token: Internals.CompatToken) -> 'Trees.DefDefApi': ...
        def unapply(self, defDef: 'Trees.DefDefApi') -> scala.Option[scala.Tuple6['Trees.ModifiersApi', Names.TermNameApi, scala.collection.immutable.List['Trees.TypeDefApi'], scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], 'Trees.TreeApi', 'Trees.TreeApi']]: ...
    class DefTreeApi(scala.reflect.api.Trees.SymTreeApi, scala.reflect.api.Trees.NameTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def name(self) -> Names.NameApi: ...
        def toString(self) -> java.lang.String: ...
    class ExistentialTypeTreeApi(scala.reflect.api.Trees.TypTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
        def tpt(self) -> 'Trees.TreeApi': ...
        def whereClauses(self) -> scala.collection.immutable.List['Trees.MemberDefApi']: ...
    class ExistentialTypeTreeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, tpt: 'Trees.TreeApi', whereClauses: scala.collection.immutable.List['Trees.MemberDefApi']) -> 'Trees.ExistentialTypeTreeApi': ...
        def unapply(self, existentialTypeTree: 'Trees.ExistentialTypeTreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.MemberDefApi']]]: ...
    class FunctionApi(scala.reflect.api.Trees.TermTreeApi, scala.reflect.api.Trees.SymTreeApi):
        def body(self) -> 'Trees.TreeApi': ...
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
        def vparams(self) -> scala.collection.immutable.List['Trees.ValDefApi']: ...
    class FunctionExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, vparams: scala.collection.immutable.List['Trees.ValDefApi'], body: 'Trees.TreeApi') -> 'Trees.FunctionApi': ...
        def unapply(self, function: 'Trees.FunctionApi') -> scala.Option[scala.Tuple2[scala.collection.immutable.List['Trees.ValDefApi'], 'Trees.TreeApi']]: ...
    class GenericApplyApi(scala.reflect.api.Trees.TermTreeApi):
        def args(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def equals(self, that: typing.Any) -> bool: ...
        def fun(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class IdentApi(scala.reflect.api.Trees.RefTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def isBackquoted(self) -> bool: ...
        def name(self) -> Names.NameApi: ...
        def toString(self) -> java.lang.String: ...
    class IdentExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, name: Names.NameApi) -> 'Trees.IdentApi': ...
        def unapply(self, ident: 'Trees.IdentApi') -> scala.Option[Names.NameApi]: ...
    class IfApi(scala.reflect.api.Trees.TermTreeApi):
        def cond(self) -> 'Trees.TreeApi': ...
        def elsep(self) -> 'Trees.TreeApi': ...
        def equals(self, that: typing.Any) -> bool: ...
        def thenp(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class IfExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, cond: 'Trees.TreeApi', thenp: 'Trees.TreeApi', elsep: 'Trees.TreeApi') -> 'Trees.IfApi': ...
        def unapply(self, if_: 'Trees.IfApi') -> scala.Option[scala.Tuple3['Trees.TreeApi', 'Trees.TreeApi', 'Trees.TreeApi']]: ...
    class ImplDefApi(scala.reflect.api.Trees.MemberDefApi):
        def equals(self, that: typing.Any) -> bool: ...
        def impl(self) -> 'Trees.TemplateApi': ...
        def toString(self) -> java.lang.String: ...
    class ImportApi(scala.reflect.api.Trees.SymTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def expr(self) -> 'Trees.TreeApi': ...
        def selectors(self) -> scala.collection.immutable.List['Trees.ImportSelectorApi']: ...
        def toString(self) -> java.lang.String: ...
    class ImportExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, expr: 'Trees.TreeApi', selectors: scala.collection.immutable.List['Trees.ImportSelectorApi']) -> 'Trees.ImportApi': ...
        def unapply(self, import_: 'Trees.ImportApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.ImportSelectorApi']]]: ...
    class ImportSelectorApi:
        def name(self) -> Names.NameApi: ...
        def namePos(self) -> int: ...
        def rename(self) -> Names.NameApi: ...
        def renamePos(self) -> int: ...
    class ImportSelectorExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, name: Names.NameApi, namePos: int, rename: Names.NameApi, renamePos: int) -> 'Trees.ImportSelectorApi': ...
        def unapply(self, importSelector: 'Trees.ImportSelectorApi') -> scala.Option[scala.Tuple4[Names.NameApi, typing.Any, Names.NameApi, typing.Any]]: ...
    class LabelDefApi(scala.reflect.api.Trees.DefTreeApi, scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        @typing.overload
        def name(self) -> Names.NameApi: ...
        @typing.overload
        def name(self) -> Names.TermNameApi: ...
        def params(self) -> scala.collection.immutable.List['Trees.IdentApi']: ...
        def rhs(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class LabelDefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, name: Names.TermNameApi, params: scala.collection.immutable.List['Trees.IdentApi'], rhs: 'Trees.TreeApi') -> 'Trees.LabelDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, params: scala.collection.immutable.List[Symbols.SymbolApi], rhs: 'Trees.TreeApi', token: Internals.CompatToken) -> 'Trees.LabelDefApi': ...
        def unapply(self, labelDef: 'Trees.LabelDefApi') -> scala.Option[scala.Tuple3[Names.TermNameApi, scala.collection.immutable.List['Trees.IdentApi'], 'Trees.TreeApi']]: ...
    class LiteralApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
        def value(self) -> Constants.ConstantApi: ...
    class LiteralExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, value: Constants.ConstantApi) -> 'Trees.LiteralApi': ...
        def unapply(self, literal: 'Trees.LiteralApi') -> scala.Option[Constants.ConstantApi]: ...
    class MatchApi(scala.reflect.api.Trees.TermTreeApi):
        def cases(self) -> scala.collection.immutable.List['Trees.CaseDefApi']: ...
        def equals(self, that: typing.Any) -> bool: ...
        def selector(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class MatchExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, selector: 'Trees.TreeApi', cases: scala.collection.immutable.List['Trees.CaseDefApi']) -> 'Trees.MatchApi': ...
        def unapply(self, match_: 'Trees.MatchApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.CaseDefApi']]]: ...
    class MemberDefApi(scala.reflect.api.Trees.DefTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def mods(self) -> 'Trees.ModifiersApi': ...
        def toString(self) -> java.lang.String: ...
    class ModifiersApi:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def annotations(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def flags(self) -> typing.Any: ...
        def hasFlag(self, flag: typing.Any) -> bool: ...
        def mapAnnotations(self, f: scala.Function1[scala.collection.immutable.List['Trees.TreeApi'], scala.collection.immutable.List['Trees.TreeApi']]) -> 'Trees.ModifiersApi': ...
        def privateWithin(self) -> Names.NameApi: ...
    class ModifiersExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, flags: typing.Any, privateWithin: Names.NameApi, annotations: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.ModifiersApi': ...
        @typing.overload
        def apply(self) -> 'Trees.ModifiersApi': ...
        def unapply(self, mods: 'Trees.ModifiersApi') -> scala.Option[scala.Tuple3[typing.Any, Names.NameApi, scala.collection.immutable.List['Trees.TreeApi']]]: ...
    class ModuleDefApi(scala.reflect.api.Trees.ImplDefApi):
        def equals(self, that: typing.Any) -> bool: ...
        def impl(self) -> 'Trees.TemplateApi': ...
        def mods(self) -> 'Trees.ModifiersApi': ...
        @typing.overload
        def name(self) -> Names.NameApi: ...
        @typing.overload
        def name(self) -> Names.TermNameApi: ...
        def toString(self) -> java.lang.String: ...
    class ModuleDefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, mods: 'Trees.ModifiersApi', name: Names.TermNameApi, impl: 'Trees.TemplateApi') -> 'Trees.ModuleDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, impl: 'Trees.TemplateApi', token: Internals.CompatToken) -> 'Trees.ModuleDefApi': ...
        def unapply(self, moduleDef: 'Trees.ModuleDefApi') -> scala.Option[scala.Tuple3['Trees.ModifiersApi', Names.TermNameApi, 'Trees.TemplateApi']]: ...
    class NameTreeApi(scala.reflect.api.Trees.TreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def name(self) -> Names.NameApi: ...
        def toString(self) -> java.lang.String: ...
    class NewApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
        def tpt(self) -> 'Trees.TreeApi': ...
    class NewExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, tpt: 'Trees.TreeApi') -> 'Trees.NewApi': ...
        def unapply(self, new_: 'Trees.NewApi') -> scala.Option['Trees.TreeApi']: ...
    class PackageDefApi(scala.reflect.api.Trees.MemberDefApi):
        def equals(self, that: typing.Any) -> bool: ...
        def pid(self) -> 'Trees.RefTreeApi': ...
        def stats(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def toString(self) -> java.lang.String: ...
    class PackageDefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, pid: 'Trees.RefTreeApi', stats: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.PackageDefApi': ...
        def unapply(self, packageDef: 'Trees.PackageDefApi') -> scala.Option[scala.Tuple2['Trees.RefTreeApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
    class RefTreeApi(scala.reflect.api.Trees.SymTreeApi, scala.reflect.api.Trees.NameTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def name(self) -> Names.NameApi: ...
        def qualifier(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class RefTreeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, qualifier: 'Trees.TreeApi', name: Names.NameApi) -> 'Trees.RefTreeApi': ...
        def unapply(self, refTree: 'Trees.RefTreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', Names.NameApi]]: ...
    class ReturnApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def expr(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class ReturnExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, expr: 'Trees.TreeApi') -> 'Trees.ReturnApi': ...
        def unapply(self, return_: 'Trees.ReturnApi') -> scala.Option['Trees.TreeApi']: ...
    class SelectApi(scala.reflect.api.Trees.RefTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def name(self) -> Names.NameApi: ...
        def qualifier(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class SelectExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, qualifier: 'Trees.TreeApi', name: Names.NameApi) -> 'Trees.SelectApi': ...
        def unapply(self, select: 'Trees.SelectApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', Names.NameApi]]: ...
    class SelectFromTypeTreeApi(scala.reflect.api.Trees.TypTreeApi, scala.reflect.api.Trees.RefTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        @typing.overload
        def name(self) -> Names.NameApi: ...
        @typing.overload
        def name(self) -> Names.TypeNameApi: ...
        def qualifier(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class SelectFromTypeTreeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, qualifier: 'Trees.TreeApi', name: Names.TypeNameApi) -> 'Trees.SelectFromTypeTreeApi': ...
        def unapply(self, selectFromTypeTree: 'Trees.SelectFromTypeTreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', Names.TypeNameApi]]: ...
    class SingletonTypeTreeApi(scala.reflect.api.Trees.TypTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def ref(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class SingletonTypeTreeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, ref: 'Trees.TreeApi') -> 'Trees.SingletonTypeTreeApi': ...
        def unapply(self, singletonTypeTree: 'Trees.SingletonTypeTreeApi') -> scala.Option['Trees.TreeApi']: ...
    class StarApi(scala.reflect.api.Trees.TermTreeApi):
        def elem(self) -> 'Trees.TreeApi': ...
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
    class StarExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, elem: 'Trees.TreeApi') -> 'Trees.StarApi': ...
        def unapply(self, star: 'Trees.StarApi') -> scala.Option['Trees.TreeApi']: ...
    class SuperApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def mix(self) -> Names.TypeNameApi: ...
        def qual(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class SuperExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, qual: 'Trees.TreeApi', mix: Names.TypeNameApi) -> 'Trees.SuperApi': ...
        def unapply(self, super_: 'Trees.SuperApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', Names.TypeNameApi]]: ...
    class SymTreeApi(scala.reflect.api.Trees.TreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def symbol(self) -> Symbols.SymbolApi: ...
        def toString(self) -> java.lang.String: ...
    class TemplateApi(scala.reflect.api.Trees.SymTreeApi):
        def body(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def equals(self, that: typing.Any) -> bool: ...
        def parents(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def self(self) -> 'Trees.ValDefApi': ...
        def toString(self) -> java.lang.String: ...
    class TemplateExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, parents: scala.collection.immutable.List['Trees.TreeApi'], self, body: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TemplateApi': ...
        def unapply(self, template: 'Trees.TemplateApi') -> scala.Option[scala.Tuple3[scala.collection.immutable.List['Trees.TreeApi'], 'Trees.ValDefApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
    class TermTreeApi(scala.reflect.api.Trees.TreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
    class ThisApi(scala.reflect.api.Trees.TermTreeApi, scala.reflect.api.Trees.SymTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def qual(self) -> Names.TypeNameApi: ...
        def toString(self) -> java.lang.String: ...
    class ThisExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, qual: Names.TypeNameApi) -> 'Trees.ThisApi': ...
        def unapply(self, this_: 'Trees.ThisApi') -> scala.Option[Names.TypeNameApi]: ...
    class ThrowApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def expr(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class ThrowExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, expr: 'Trees.TreeApi') -> 'Trees.ThrowApi': ...
        def unapply(self, throw_: 'Trees.ThrowApi') -> scala.Option['Trees.TreeApi']: ...
    class Transformer:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        _atOwner__A = typing.TypeVar('_atOwner__A')  # <A>
        def atOwner(self, owner: Symbols.SymbolApi, trans: scala.Function0[_atOwner__A]) -> _atOwner__A: ...
        def currentClass(self) -> Symbols.SymbolApi: ...
        def currentMethod(self) -> Symbols.SymbolApi: ...
        def currentOwner(self) -> Symbols.SymbolApi: ...
        def currentOwner_$eq(self, x$1: Symbols.SymbolApi) -> None: ...
        def transform(self, tree: 'Trees.TreeApi') -> 'Trees.TreeApi': ...
        def transformCaseDefs(self, trees: scala.collection.immutable.List['Trees.CaseDefApi']) -> scala.collection.immutable.List['Trees.CaseDefApi']: ...
        def transformIdents(self, trees: scala.collection.immutable.List['Trees.IdentApi']) -> scala.collection.immutable.List['Trees.IdentApi']: ...
        def transformMemberDefs(self, trees: scala.collection.immutable.List['Trees.MemberDefApi']) -> scala.collection.immutable.List['Trees.MemberDefApi']: ...
        def transformModifiers(self, mods: 'Trees.ModifiersApi') -> 'Trees.ModifiersApi': ...
        def transformStats(self, stats: scala.collection.immutable.List['Trees.TreeApi'], exprOwner: Symbols.SymbolApi) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def transformTemplate(self, tree: 'Trees.TemplateApi') -> 'Trees.TemplateApi': ...
        def transformTrees(self, trees: scala.collection.immutable.List['Trees.TreeApi']) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def transformTypeDefs(self, trees: scala.collection.immutable.List['Trees.TypeDefApi']) -> scala.collection.immutable.List['Trees.TypeDefApi']: ...
        def transformValDef(self, tree: 'Trees.ValDefApi') -> 'Trees.ValDefApi': ...
        def transformValDefs(self, trees: scala.collection.immutable.List['Trees.ValDefApi']) -> scala.collection.immutable.List['Trees.ValDefApi']: ...
        def transformValDefss(self, treess: scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']]) -> scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']]: ...
        def treeCopy(self) -> 'Trees.TreeCopierOps': ...
    class Traverser:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        _apply__T = typing.TypeVar('_apply__T', bound='Trees.TreeApi')  # <T>
        def apply(self, tree: _apply__T) -> _apply__T: ...
        def atOwner(self, owner: Symbols.SymbolApi, traverse: scala.Function0[scala.runtime.BoxedUnit]) -> None: ...
        def currentOwner(self) -> Symbols.SymbolApi: ...
        def currentOwner_$eq(self, x$1: Symbols.SymbolApi) -> None: ...
        def traverse(self, tree: 'Trees.TreeApi') -> None: ...
        def traverseAnnotations(self, annots: scala.collection.immutable.List['Trees.TreeApi']) -> None: ...
        def traverseCases(self, cases: scala.collection.immutable.List['Trees.CaseDefApi']) -> None: ...
        def traverseConstant(self, c: Constants.ConstantApi) -> None: ...
        def traverseGuard(self, guard: 'Trees.TreeApi') -> None: ...
        def traverseImportSelector(self, sel: 'Trees.ImportSelectorApi') -> None: ...
        def traverseModifiers(self, mods: 'Trees.ModifiersApi') -> None: ...
        def traverseName(self, name: Names.NameApi) -> None: ...
        def traverseParams(self, params: scala.collection.immutable.List['Trees.TreeApi']) -> None: ...
        def traverseParamss(self, vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']]) -> None: ...
        def traverseParents(self, parents: scala.collection.immutable.List['Trees.TreeApi']) -> None: ...
        def traversePattern(self, pat: 'Trees.TreeApi') -> None: ...
        def traverseSelfType(self, self) -> None: ...
        def traverseStats(self, stats: scala.collection.immutable.List['Trees.TreeApi'], exprOwner: Symbols.SymbolApi) -> None: ...
        def traverseTrees(self, trees: scala.collection.immutable.List['Trees.TreeApi']) -> None: ...
        def traverseTreess(self, treess: scala.collection.immutable.List[scala.collection.immutable.List['Trees.TreeApi']]) -> None: ...
        def traverseTypeArgs(self, args: scala.collection.immutable.List['Trees.TreeApi']) -> None: ...
        def traverseTypeAscription(self, tpt: 'Trees.TreeApi') -> None: ...
    class TreeApi(scala.Product):
        @staticmethod
        def $init$($this: 'Trees.TreeApi') -> None: ...
        def canHaveAttrs(self) -> bool: ...
        def children(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        _collect__T = typing.TypeVar('_collect__T')  # <T>
        def collect(self, pf: scala.PartialFunction['Trees.TreeApi', _collect__T]) -> scala.collection.immutable.List[_collect__T]: ...
        def duplicate(self) -> 'Trees.TreeApi': ...
        def equals(self, that: typing.Any) -> bool: ...
        def equalsStructure(self, that: 'Trees.TreeApi') -> bool: ...
        def exists(self, p: scala.Function1['Trees.TreeApi', typing.Any]) -> bool: ...
        def filter(self, f: scala.Function1['Trees.TreeApi', typing.Any]) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def find(self, p: scala.Function1['Trees.TreeApi', typing.Any]) -> scala.Option['Trees.TreeApi']: ...
        def forAll(self, p: scala.Function1['Trees.TreeApi', typing.Any]) -> bool: ...
        def foreach(self, f: scala.Function1['Trees.TreeApi', scala.runtime.BoxedUnit]) -> None: ...
        def isDef(self) -> bool: ...
        def isEmpty(self) -> bool: ...
        def isTerm(self) -> bool: ...
        def isType(self) -> bool: ...
        def nonEmpty(self) -> bool: ...
        def orElse(self, alt: scala.Function0['Trees.TreeApi']) -> 'Trees.TreeApi': ...
        def pos(self) -> Position: ...
        def symbol(self) -> Symbols.SymbolApi: ...
        def toString(self) -> java.lang.String: ...
        def tpe(self) -> Types.TypeApi: ...
        def withFilter(self, f: scala.Function1['Trees.TreeApi', typing.Any]) -> scala.collection.immutable.List['Trees.TreeApi']: ...
    class TreeCopierOps:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def Alternative(self, tree: 'Trees.TreeApi', trees: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.AlternativeApi': ...
        def Annotated(self, tree: 'Trees.TreeApi', annot: 'Trees.TreeApi', arg: 'Trees.TreeApi') -> 'Trees.AnnotatedApi': ...
        def AppliedTypeTree(self, tree: 'Trees.TreeApi', tpt: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.AppliedTypeTreeApi': ...
        def Apply(self, tree: 'Trees.TreeApi', fun: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.ApplyApi': ...
        def Assign(self, tree: 'Trees.TreeApi', lhs: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.AssignApi': ...
        def AssignOrNamedArg(self, tree: 'Trees.TreeApi', lhs: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.AssignOrNamedArgApi': ...
        def Bind(self, tree: 'Trees.TreeApi', name: Names.NameApi, body: 'Trees.TreeApi') -> 'Trees.BindApi': ...
        def Block(self, tree: 'Trees.TreeApi', stats: scala.collection.immutable.List['Trees.TreeApi'], expr: 'Trees.TreeApi') -> 'Trees.BlockApi': ...
        def CaseDef(self, tree: 'Trees.TreeApi', pat: 'Trees.TreeApi', guard: 'Trees.TreeApi', body: 'Trees.TreeApi') -> 'Trees.CaseDefApi': ...
        def ClassDef(self, tree: 'Trees.TreeApi', mods: 'Trees.ModifiersApi', name: Names.NameApi, tparams: scala.collection.immutable.List['Trees.TypeDefApi'], impl: 'Trees.TemplateApi') -> 'Trees.ClassDefApi': ...
        def CompoundTypeTree(self, tree: 'Trees.TreeApi', templ: 'Trees.TemplateApi') -> 'Trees.CompoundTypeTreeApi': ...
        def DefDef(self, tree: 'Trees.TreeApi', mods: 'Trees.ModifiersApi', name: Names.NameApi, tparams: scala.collection.immutable.List['Trees.TypeDefApi'], vparamss: scala.collection.immutable.List[scala.collection.immutable.List['Trees.ValDefApi']], tpt: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.DefDefApi': ...
        def ExistentialTypeTree(self, tree: 'Trees.TreeApi', tpt: 'Trees.TreeApi', whereClauses: scala.collection.immutable.List['Trees.MemberDefApi']) -> 'Trees.ExistentialTypeTreeApi': ...
        def Function(self, tree: 'Trees.TreeApi', vparams: scala.collection.immutable.List['Trees.ValDefApi'], body: 'Trees.TreeApi') -> 'Trees.FunctionApi': ...
        def Ident(self, tree: 'Trees.TreeApi', name: Names.NameApi) -> 'Trees.IdentApi': ...
        def If(self, tree: 'Trees.TreeApi', cond: 'Trees.TreeApi', thenp: 'Trees.TreeApi', elsep: 'Trees.TreeApi') -> 'Trees.IfApi': ...
        def Import(self, tree: 'Trees.TreeApi', expr: 'Trees.TreeApi', selectors: scala.collection.immutable.List['Trees.ImportSelectorApi']) -> 'Trees.ImportApi': ...
        def LabelDef(self, tree: 'Trees.TreeApi', name: Names.NameApi, params: scala.collection.immutable.List['Trees.IdentApi'], rhs: 'Trees.TreeApi') -> 'Trees.LabelDefApi': ...
        def Literal(self, tree: 'Trees.TreeApi', value: Constants.ConstantApi) -> 'Trees.LiteralApi': ...
        def Match(self, tree: 'Trees.TreeApi', selector: 'Trees.TreeApi', cases: scala.collection.immutable.List['Trees.CaseDefApi']) -> 'Trees.MatchApi': ...
        def ModuleDef(self, tree: 'Trees.TreeApi', mods: 'Trees.ModifiersApi', name: Names.NameApi, impl: 'Trees.TemplateApi') -> 'Trees.ModuleDefApi': ...
        def New(self, tree: 'Trees.TreeApi', tpt: 'Trees.TreeApi') -> 'Trees.NewApi': ...
        def PackageDef(self, tree: 'Trees.TreeApi', pid: 'Trees.RefTreeApi', stats: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.PackageDefApi': ...
        def RefTree(self, tree: 'Trees.TreeApi', qualifier: 'Trees.TreeApi', selector: Names.NameApi) -> 'Trees.RefTreeApi': ...
        def ReferenceToBoxed(self, tree: 'Trees.TreeApi', idt: 'Trees.IdentApi') -> Internals.ReferenceToBoxedApi: ...
        def Return(self, tree: 'Trees.TreeApi', expr: 'Trees.TreeApi') -> 'Trees.ReturnApi': ...
        def Select(self, tree: 'Trees.TreeApi', qualifier: 'Trees.TreeApi', selector: Names.NameApi) -> 'Trees.SelectApi': ...
        def SelectFromTypeTree(self, tree: 'Trees.TreeApi', qualifier: 'Trees.TreeApi', selector: Names.NameApi) -> 'Trees.SelectFromTypeTreeApi': ...
        def SingletonTypeTree(self, tree: 'Trees.TreeApi', ref: 'Trees.TreeApi') -> 'Trees.SingletonTypeTreeApi': ...
        def Star(self, tree: 'Trees.TreeApi', elem: 'Trees.TreeApi') -> 'Trees.StarApi': ...
        def Super(self, tree: 'Trees.TreeApi', qual: 'Trees.TreeApi', mix: Names.TypeNameApi) -> 'Trees.SuperApi': ...
        def Template(self, tree: 'Trees.TreeApi', parents: scala.collection.immutable.List['Trees.TreeApi'], self, body: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TemplateApi': ...
        def This(self, tree: 'Trees.TreeApi', qual: Names.NameApi) -> 'Trees.ThisApi': ...
        def Throw(self, tree: 'Trees.TreeApi', expr: 'Trees.TreeApi') -> 'Trees.ThrowApi': ...
        def Try(self, tree: 'Trees.TreeApi', block: 'Trees.TreeApi', catches: scala.collection.immutable.List['Trees.CaseDefApi'], finalizer: 'Trees.TreeApi') -> 'Trees.TryApi': ...
        def TypeApply(self, tree: 'Trees.TreeApi', fun: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TypeApplyApi': ...
        def TypeBoundsTree(self, tree: 'Trees.TreeApi', lo: 'Trees.TreeApi', hi: 'Trees.TreeApi') -> 'Trees.TypeBoundsTreeApi': ...
        def TypeDef(self, tree: 'Trees.TreeApi', mods: 'Trees.ModifiersApi', name: Names.NameApi, tparams: scala.collection.immutable.List['Trees.TypeDefApi'], rhs: 'Trees.TreeApi') -> 'Trees.TypeDefApi': ...
        def TypeTree(self, tree: 'Trees.TreeApi') -> 'Trees.TypeTreeApi': ...
        def Typed(self, tree: 'Trees.TreeApi', expr: 'Trees.TreeApi', tpt: 'Trees.TreeApi') -> 'Trees.TypedApi': ...
        def UnApply(self, tree: 'Trees.TreeApi', fun: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.UnApplyApi': ...
        def ValDef(self, tree: 'Trees.TreeApi', mods: 'Trees.ModifiersApi', name: Names.NameApi, tpt: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.ValDefApi': ...
    class TryApi(scala.reflect.api.Trees.TermTreeApi):
        def block(self) -> 'Trees.TreeApi': ...
        def catches(self) -> scala.collection.immutable.List['Trees.CaseDefApi']: ...
        def equals(self, that: typing.Any) -> bool: ...
        def finalizer(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class TryExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, block: 'Trees.TreeApi', catches: scala.collection.immutable.List['Trees.CaseDefApi'], finalizer: 'Trees.TreeApi') -> 'Trees.TryApi': ...
        def unapply(self, try_: 'Trees.TryApi') -> scala.Option[scala.Tuple3['Trees.TreeApi', scala.collection.immutable.List['Trees.CaseDefApi'], 'Trees.TreeApi']]: ...
    class TypTreeApi(scala.reflect.api.Trees.TreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
    class TypeApplyApi(scala.reflect.api.Trees.GenericApplyApi):
        def equals(self, that: typing.Any) -> bool: ...
        def toString(self) -> java.lang.String: ...
    class TypeApplyExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, fun: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.TypeApplyApi': ...
        def unapply(self, typeApply: 'Trees.TypeApplyApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
    class TypeBoundsTreeApi(scala.reflect.api.Trees.TypTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def hi(self) -> 'Trees.TreeApi': ...
        def lo(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class TypeBoundsTreeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, lo: 'Trees.TreeApi', hi: 'Trees.TreeApi') -> 'Trees.TypeBoundsTreeApi': ...
        def unapply(self, typeBoundsTree: 'Trees.TypeBoundsTreeApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
    class TypeDefApi(scala.reflect.api.Trees.MemberDefApi):
        def equals(self, that: typing.Any) -> bool: ...
        def mods(self) -> 'Trees.ModifiersApi': ...
        @typing.overload
        def name(self) -> Names.NameApi: ...
        @typing.overload
        def name(self) -> Names.TypeNameApi: ...
        def rhs(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
        def tparams(self) -> scala.collection.immutable.List['Trees.TypeDefApi']: ...
    class TypeDefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, mods: 'Trees.ModifiersApi', name: Names.TypeNameApi, tparams: scala.collection.immutable.List['Trees.TypeDefApi'], rhs: 'Trees.TreeApi') -> 'Trees.TypeDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, token: Internals.CompatToken) -> 'Trees.TypeDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, rhs: 'Trees.TreeApi', token: Internals.CompatToken) -> 'Trees.TypeDefApi': ...
        def unapply(self, typeDef: 'Trees.TypeDefApi') -> scala.Option[scala.Tuple4['Trees.ModifiersApi', Names.TypeNameApi, scala.collection.immutable.List['Trees.TypeDefApi'], 'Trees.TreeApi']]: ...
    class TypeTreeApi(scala.reflect.api.Trees.TypTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def original(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class TypeTreeExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self) -> 'Trees.TypeTreeApi': ...
        def unapply(self, typeTree: 'Trees.TypeTreeApi') -> bool: ...
    class TypedApi(scala.reflect.api.Trees.TermTreeApi):
        def equals(self, that: typing.Any) -> bool: ...
        def expr(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
        def tpt(self) -> 'Trees.TreeApi': ...
    class TypedExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, expr: 'Trees.TreeApi', tpt: 'Trees.TreeApi') -> 'Trees.TypedApi': ...
        def unapply(self, typed: 'Trees.TypedApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', 'Trees.TreeApi']]: ...
    class UnApplyApi(scala.reflect.api.Trees.TermTreeApi):
        def args(self) -> scala.collection.immutable.List['Trees.TreeApi']: ...
        def equals(self, that: typing.Any) -> bool: ...
        def fun(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
    class UnApplyExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        def apply(self, fun: 'Trees.TreeApi', args: scala.collection.immutable.List['Trees.TreeApi']) -> 'Trees.UnApplyApi': ...
        def unapply(self, unApply: 'Trees.UnApplyApi') -> scala.Option[scala.Tuple2['Trees.TreeApi', scala.collection.immutable.List['Trees.TreeApi']]]: ...
    class ValDefApi(scala.reflect.api.Trees.ValOrDefDefApi):
        def equals(self, that: typing.Any) -> bool: ...
        def mods(self) -> 'Trees.ModifiersApi': ...
        @typing.overload
        def name(self) -> Names.NameApi: ...
        @typing.overload
        def name(self) -> Names.TermNameApi: ...
        def rhs(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
        def tpt(self) -> 'Trees.TreeApi': ...
    class ValDefExtractor:
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe'): ...
        @typing.overload
        def apply(self, mods: 'Trees.ModifiersApi', name: Names.TermNameApi, tpt: 'Trees.TreeApi', rhs: 'Trees.TreeApi') -> 'Trees.ValDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, token: Internals.CompatToken) -> 'Trees.ValDefApi': ...
        @typing.overload
        def apply(self, sym: Symbols.SymbolApi, rhs: 'Trees.TreeApi', token: Internals.CompatToken) -> 'Trees.ValDefApi': ...
        def unapply(self, valDef: 'Trees.ValDefApi') -> scala.Option[scala.Tuple4['Trees.ModifiersApi', Names.TermNameApi, 'Trees.TreeApi', 'Trees.TreeApi']]: ...
    class ValOrDefDefApi(scala.reflect.api.Trees.MemberDefApi):
        def equals(self, that: typing.Any) -> bool: ...
        @typing.overload
        def name(self) -> Names.NameApi: ...
        @typing.overload
        def name(self) -> Names.TermNameApi: ...
        def rhs(self) -> 'Trees.TreeApi': ...
        def toString(self) -> java.lang.String: ...
        def tpt(self) -> 'Trees.TreeApi': ...

_TypeTags__PredefTypeCreator__T = typing.TypeVar('_TypeTags__PredefTypeCreator__T')  # <T>
_TypeTags__PredefTypeTag__T = typing.TypeVar('_TypeTags__PredefTypeTag__T')  # <T>
_TypeTags__TypeTag__T = typing.TypeVar('_TypeTags__TypeTag__T')  # <T>
_TypeTags__TypeTagImpl__T = typing.TypeVar('_TypeTags__TypeTagImpl__T')  # <T>
_TypeTags__WeakTypeTag__T = typing.TypeVar('_TypeTags__WeakTypeTag__T')  # <T>
_TypeTags__WeakTypeTagImpl__T = typing.TypeVar('_TypeTags__WeakTypeTagImpl__T')  # <T>
class TypeTags:
    @staticmethod
    def $init$($this: 'TypeTags') -> None: ...
    _symbolOf__T = typing.TypeVar('_symbolOf__T')  # <T>
    def symbolOf(self, evidence$1: 'TypeTags.WeakTypeTag'[_symbolOf__T]) -> Symbols.TypeSymbolApi: ...
    _typeOf__T = typing.TypeVar('_typeOf__T')  # <T>
    def typeOf(self, ttag: 'TypeTags.TypeTag'[_typeOf__T]) -> Types.TypeApi: ...
    _typeTag__T = typing.TypeVar('_typeTag__T')  # <T>
    def typeTag(self, ttag: 'TypeTags.TypeTag'[_typeTag__T]) -> 'TypeTags.TypeTag'[_typeTag__T]: ...
    _weakTypeOf__T = typing.TypeVar('_weakTypeOf__T')  # <T>
    def weakTypeOf(self, attag: 'TypeTags.WeakTypeTag'[_weakTypeOf__T]) -> Types.TypeApi: ...
    _weakTypeTag__T = typing.TypeVar('_weakTypeTag__T')  # <T>
    def weakTypeTag(self, attag: 'TypeTags.WeakTypeTag'[_weakTypeTag__T]) -> 'TypeTags.WeakTypeTag'[_weakTypeTag__T]: ...
    class PredefTypeCreator(TypeCreator, typing.Generic[_TypeTags__PredefTypeCreator__T]):
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe', copyIn: scala.Function1['Universe', 'TypeTags.TypeTag'[_TypeTags__PredefTypeCreator__T]]): ...
        _apply__U = typing.TypeVar('_apply__U', bound='Universe')  # <U>
        def apply(self, m: Mirror[_apply__U]) -> Types.TypeApi: ...
    class PredefTypeTag(scala.reflect.api.TypeTags.TypeTagImpl[_TypeTags__PredefTypeTag__T], typing.Generic[_TypeTags__PredefTypeTag__T]):
        def __init__(self, $outer: 'Universe', _tpe: Types.TypeApi, copyIn: scala.Function1['Universe', 'TypeTags.TypeTag'[_TypeTags__PredefTypeTag__T]]): ...
        def tpe(self) -> Types.TypeApi: ...
    class TypeTag(scala.reflect.api.TypeTags.WeakTypeTag[_TypeTags__TypeTag__T], typing.Generic[_TypeTags__TypeTag__T]):
        @staticmethod
        def $init$($this: 'TypeTags.TypeTag') -> None: ...
        def canEqual(self, x: typing.Any) -> bool: ...
        def equals(self, x: typing.Any) -> bool: ...
        def hashCode(self) -> int: ...
        def toString(self) -> java.lang.String: ...
    class TypeTag$(scala.Serializable):
        def __init__(self, $outer: 'Universe'): ...
        def Any(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def AnyRef(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def AnyVal(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Boolean(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Byte(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Char(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Double(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Float(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Int(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Long(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Nothing(self) -> 'TypeTags.TypeTag'[scala.runtime.Nothing.]: ...
        def Null(self) -> 'TypeTags.TypeTag'[scala.runtime.Null.]: ...
        def Object(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Short(self) -> 'TypeTags.TypeTag'[typing.Any]: ...
        def Unit(self) -> 'TypeTags.TypeTag'[scala.runtime.BoxedUnit]: ...
        _apply__T = typing.TypeVar('_apply__T')  # <T>
        def apply(self, mirror1: Mirror['Universe'], tpec1: TypeCreator) -> 'TypeTags.TypeTag'[_apply__T]: ...
        _unapply__T = typing.TypeVar('_unapply__T')  # <T>
        def unapply(self, ttag: 'TypeTags.TypeTag'[_unapply__T]) -> scala.Option[Types.TypeApi]: ...
    class TypeTagImpl(scala.reflect.api.TypeTags.WeakTypeTagImpl[_TypeTags__TypeTagImpl__T], scala.reflect.api.TypeTags.TypeTag[_TypeTags__TypeTagImpl__T], typing.Generic[_TypeTags__TypeTagImpl__T]):
        def __init__(self, $outer: 'Universe', mirror: Mirror, tpec: TypeCreator): ...
        def canEqual(self, x: typing.Any) -> bool: ...
        def equals(self, x: typing.Any) -> bool: ...
        def hashCode(self) -> int: ...
        def toString(self) -> java.lang.String: ...
    class WeakTypeTag(scala.Equals, scala.Serializable, typing.Generic[_TypeTags__WeakTypeTag__T]):
        @staticmethod
        def $init$($this: 'TypeTags.WeakTypeTag') -> None: ...
        def canEqual(self, x: typing.Any) -> bool: ...
        def equals(self, x: typing.Any) -> bool: ...
        def hashCode(self) -> int: ...
        def mirror(self) -> Mirror: ...
        def toString(self) -> java.lang.String: ...
        def tpe(self) -> Types.TypeApi: ...
    class WeakTypeTag$(scala.Serializable):
        def __init__(self, $outer: 'Universe'): ...
        def Any(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def AnyRef(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def AnyVal(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Boolean(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Byte(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Char(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Double(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Float(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Int(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Long(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Nothing(self) -> 'TypeTags.WeakTypeTag'[scala.runtime.Nothing.]: ...
        def Null(self) -> 'TypeTags.WeakTypeTag'[scala.runtime.Null.]: ...
        def Object(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Short(self) -> 'TypeTags.WeakTypeTag'[typing.Any]: ...
        def Unit(self) -> 'TypeTags.WeakTypeTag'[scala.runtime.BoxedUnit]: ...
        _apply__T = typing.TypeVar('_apply__T')  # <T>
        def apply(self, mirror1: Mirror['Universe'], tpec1: TypeCreator) -> 'TypeTags.WeakTypeTag'[_apply__T]: ...
        _unapply__T = typing.TypeVar('_unapply__T')  # <T>
        def unapply(self, ttag: 'TypeTags.WeakTypeTag'[_unapply__T]) -> scala.Option[Types.TypeApi]: ...
    class WeakTypeTagImpl(scala.reflect.api.TypeTags.WeakTypeTag[_TypeTags__WeakTypeTagImpl__T], typing.Generic[_TypeTags__WeakTypeTagImpl__T]):
        $outer: 'Universe' = ...
        def __init__(self, $outer: 'Universe', mirror: Mirror, tpec: TypeCreator): ...
        def canEqual(self, x: typing.Any) -> bool: ...
        def equals(self, x: typing.Any) -> bool: ...
        def hashCode(self) -> int: ...
        def mirror(self) -> Mirror: ...
        def toString(self) -> java.lang.String: ...
        def tpe(self) -> Types.TypeApi: ...
        def tpec(self) -> TypeCreator: ...

class Universe(Symbols, Types, FlagSets, Scopes, Names, Trees, Constants, Annotations, Positions, Exprs, TypeTags, ImplicitTags, StandardDefinitions, StandardNames, StandardLiftables, Mirrors, Printers, Liftables, Quasiquotes, Internals):
    def __init__(self): ...
    def BooleanFlag(self) -> Printers.BooleanFlag.: ...
    def Expr(self) -> Exprs.Expr.: ...
    def Liftable(self) -> Liftables.Liftable.: ...
    @typing.overload
    def Modifiers(self) -> Trees.ModifiersExtractor: ...
    @typing.overload
    def Modifiers(self, flags: typing.Any) -> Trees.ModifiersApi: ...
    @typing.overload
    def Modifiers(self, flags: typing.Any, privateWithin: Names.NameApi) -> Trees.ModifiersApi: ...
    def NoMods(self) -> Trees.ModifiersApi: ...
    def Quasiquote(self, ctx: scala.StringContext) -> Quasiquotes.Quasiquote: ...
    def TypeTag(self) -> TypeTags.TypeTag.: ...
    _TypeTagImpl__T = typing.TypeVar('_TypeTagImpl__T')  # <T>
    def TypeTagImpl(self, mirror: Mirror, tpec: TypeCreator) -> TypeTags.TypeTag[_TypeTagImpl__T]: ...
    def Unliftable(self) -> Liftables.Unliftable.: ...
    def WeakTypeTag(self) -> TypeTags.WeakTypeTag.: ...
    def itransform(self, transformer: Trees.Transformer, tree: Trees.TreeApi) -> Trees.TreeApi: ...
    def itraverse(self, traverser: Trees.Traverser, tree: Trees.TreeApi) -> None: ...
    def mkImporter(self, from0: 'Universe') -> Internals.Importer: ...
    def render(self, what: typing.Any, mkPrinter: scala.Function1[java.io.PrintWriter, Printers.TreePrinter], printTypes: Printers.BooleanFlag, printIds: Printers.BooleanFlag, printOwners: Printers.BooleanFlag, printKinds: Printers.BooleanFlag, printMirrors: Printers.BooleanFlag, printPositions: Printers.BooleanFlag) -> java.lang.String: ...
    def render$default$3(self) -> Printers.BooleanFlag: ...
    def render$default$4(self) -> Printers.BooleanFlag: ...
    def render$default$5(self) -> Printers.BooleanFlag: ...
    def render$default$6(self) -> Printers.BooleanFlag: ...
    def render$default$7(self) -> Printers.BooleanFlag: ...
    def render$default$8(self) -> Printers.BooleanFlag: ...
    def scala$reflect$api$StandardLiftables$$stdnme(self) -> StandardLiftables.stdnme.: ...
    def scala$reflect$api$Trees$_setter_$treeCopy_$eq(self, x$1: Trees.TreeCopierOps) -> None: ...
    @typing.overload
    def show(self, flags: typing.Any) -> java.lang.String: ...
    @typing.overload
    def show(self, name: Names.NameApi) -> java.lang.String: ...
    @typing.overload
    def show(self, position: Position) -> java.lang.String: ...
    @typing.overload
    def show(self, any: typing.Any, printTypes: Printers.BooleanFlag, printIds: Printers.BooleanFlag, printOwners: Printers.BooleanFlag, printKinds: Printers.BooleanFlag, printMirrors: Printers.BooleanFlag, printPositions: Printers.BooleanFlag) -> java.lang.String: ...
    def show$default$2(self) -> Printers.BooleanFlag: ...
    def show$default$3(self) -> Printers.BooleanFlag: ...
    def show$default$4(self) -> Printers.BooleanFlag: ...
    def show$default$5(self) -> Printers.BooleanFlag: ...
    def show$default$6(self) -> Printers.BooleanFlag: ...
    def show$default$7(self) -> Printers.BooleanFlag: ...
    def showCode(self, tree: Trees.TreeApi, printTypes: Printers.BooleanFlag, printIds: Printers.BooleanFlag, printOwners: Printers.BooleanFlag, printPositions: Printers.BooleanFlag, printRootPkg: bool) -> java.lang.String: ...
    def showCode$default$2(self) -> Printers.BooleanFlag: ...
    def showCode$default$3(self) -> Printers.BooleanFlag: ...
    def showCode$default$4(self) -> Printers.BooleanFlag: ...
    def showCode$default$5(self) -> Printers.BooleanFlag: ...
    def showCode$default$6(self) -> bool: ...
    @typing.overload
    def showRaw(self, flags: typing.Any) -> java.lang.String: ...
    @typing.overload
    def showRaw(self, any: typing.Any, printTypes: Printers.BooleanFlag, printIds: Printers.BooleanFlag, printOwners: Printers.BooleanFlag, printKinds: Printers.BooleanFlag, printMirrors: Printers.BooleanFlag, printPositions: Printers.BooleanFlag) -> java.lang.String: ...
    @typing.overload
    def showRaw(self, name: Names.NameApi) -> java.lang.String: ...
    @typing.overload
    def showRaw(self, position: Position) -> java.lang.String: ...
    def showRaw$default$2(self) -> Printers.BooleanFlag: ...
    def showRaw$default$3(self) -> Printers.BooleanFlag: ...
    def showRaw$default$4(self) -> Printers.BooleanFlag: ...
    def showRaw$default$5(self) -> Printers.BooleanFlag: ...
    def showRaw$default$6(self) -> Printers.BooleanFlag: ...
    def showRaw$default$7(self) -> Printers.BooleanFlag: ...
    def stringToTermName(self, s: typing.Union[java.lang.String, str]) -> Names.TermNameApi: ...
    def stringToTypeName(self, s: typing.Union[java.lang.String, str]) -> Names.TypeNameApi: ...
    def treeCopy(self) -> Trees.TreeCopierOps: ...
    def treeToString(self, tree: Trees.TreeApi) -> java.lang.String: ...
    _typeOf__T = typing.TypeVar('_typeOf__T')  # <T>
    def typeOf(self, ttag: TypeTags.TypeTag[_typeOf__T]) -> Types.TypeApi: ...
    _typeTag__T = typing.TypeVar('_typeTag__T')  # <T>
    def typeTag(self, ttag: TypeTags.TypeTag[_typeTag__T]) -> TypeTags.TypeTag[_typeTag__T]: ...
    _weakTypeOf__T = typing.TypeVar('_weakTypeOf__T')  # <T>
    def weakTypeOf(self, attag: TypeTags.WeakTypeTag[_weakTypeOf__T]) -> Types.TypeApi: ...
    _weakTypeTag__T = typing.TypeVar('_weakTypeTag__T')  # <T>
    def weakTypeTag(self, attag: TypeTags.WeakTypeTag[_weakTypeTag__T]) -> TypeTags.WeakTypeTag[_weakTypeTag__T]: ...
    def xtransform(self, transformer: Trees.Transformer, tree: Trees.TreeApi) -> Trees.TreeApi: ...
    def xtraverse(self, traverser: Trees.Traverser, tree: Trees.TreeApi) -> None: ...


class __module_protocol__(typing.Protocol):
    # A module protocol which reflects the result of ``jp.JPackage("scala.reflect.api")``.

    Annotations: typing.Type[Annotations]
    Constants: typing.Type[Constants]
    Exprs: typing.Type[Exprs]
    FlagSets: typing.Type[FlagSets]
    ImplicitTags: typing.Type[ImplicitTags]
    Internals: typing.Type[Internals]
    JavaUniverse: typing.Type[JavaUniverse]
    Liftables: typing.Type[Liftables]
    Mirror: typing.Type[Mirror]
    Mirrors: typing.Type[Mirrors]
    Names: typing.Type[Names]
    Position: typing.Type[Position]
    Positions: typing.Type[Positions]
    PredefTypeCreator: typing.Type[PredefTypeCreator]
    Printers: typing.Type[Printers]
    Quasiquotes: typing.Type[Quasiquotes]
    Scopes: typing.Type[Scopes]
    SerializedExpr: typing.Type[SerializedExpr]
    SerializedTypeTag: typing.Type[SerializedTypeTag]
    StandardDefinitions: typing.Type[StandardDefinitions]
    StandardLiftables: typing.Type[StandardLiftables]
    StandardNames: typing.Type[StandardNames]
    Symbols: typing.Type[Symbols]
    TreeCreator: typing.Type[TreeCreator]
    Trees: typing.Type[Trees]
    TypeCreator: typing.Type[TypeCreator]
    TypeTags: typing.Type[TypeTags]
    Types: typing.Type[Types]
    Universe: typing.Type[Universe]
    package: typing.Type[package]
