diff --git a/tsc/internal/checker/nodebuilderimpl.go b/tsc/internal/checker/nodebuilderimpl.go index 5cd58f6ec95f0..b00462484a6db 100644 --- a/tsc/internal/checker/nodebuilderimpl.go +++ b/tsc/internal/checker/nodebuilderimpl.go @@ -2924,7 +2924,7 @@ func (b *NodeBuilderImpl) createAnonymousTypeNodeEx(t *Type, forceClassExpansion // in turn try to reuse the same node again. Mark the type as visited around the reuse // attempt so the inner recursion bottoms out via the visitedTypes guard below. if b.ctx.visitedTypes.Has(typeId) { - return b.createElidedInformationPlaceholder() + return b.createCyclicStructurePlaceholder() } b.ctx.visitedTypes.Add(typeId) typeNode := b.tryReuseExistingNonParameterTypeNode(existing, t, nil, nil) @@ -2934,7 +2934,7 @@ func (b *NodeBuilderImpl) createAnonymousTypeNodeEx(t *Type, forceClassExpansion } } if b.ctx.visitedTypes.Has(typeId) { - return b.createElidedInformationPlaceholder() + return b.createCyclicStructurePlaceholder() } return b.visitAndTransformType(t, (*NodeBuilderImpl).createTypeNodeFromObjectType) } @@ -2964,7 +2964,7 @@ func (b *NodeBuilderImpl) createAnonymousTypeNodeEx(t *Type, forceClassExpansion // The specified symbol flags need to be reinterpreted as type flags return b.symbolToTypeNode(typeAlias, ast.SymbolFlagsType, nil) } else { - return b.createElidedInformationPlaceholder() + return b.createCyclicStructurePlaceholder() } } else { return b.visitAndTransformType(t, (*NodeBuilderImpl).createTypeNodeFromObjectType) @@ -2995,17 +2995,21 @@ func (b *NodeBuilderImpl) getTypeFromTypeNode(node *ast.TypeNode, noMappedTypes func (b *NodeBuilderImpl) typeToTypeNodeOrCircularityElision(t *Type) *ast.TypeNode { if t.flags&TypeFlagsUnion != 0 { if b.ctx.visitedTypes.Has(t.id) { - if b.ctx.flags&nodebuilder.FlagsAllowAnonymousIdentifier == 0 { - b.ctx.encounteredError = true - b.ctx.tracker.ReportCyclicStructureError() - } - return b.createElidedInformationPlaceholder() + return b.createCyclicStructurePlaceholder() } return b.visitAndTransformType(t, (*NodeBuilderImpl).typeToTypeNode) } return b.typeToTypeNode(t) } +func (b *NodeBuilderImpl) createCyclicStructurePlaceholder() *ast.TypeNode { + if b.ctx.flags&nodebuilder.FlagsAllowAnonymousIdentifier == 0 { + b.ctx.encounteredError = true + b.ctx.tracker.ReportCyclicStructureError() + } + return b.createElidedInformationPlaceholder() +} + func (b *NodeBuilderImpl) conditionalTypeToTypeNode(_t *Type) *ast.TypeNode { if b.checkTruncationLength() { return b.createElidedInformationPlaceholder() @@ -3249,6 +3253,7 @@ func (b *NodeBuilderImpl) visitAndTransformType(t *Type, transform func(b *NodeB if id != nil { depth = b.ctx.symbolDepth[*id] if depth > 10 { + b.ctx.truncating = true return b.createElidedInformationPlaceholder() } b.ctx.symbolDepth[*id] = depth + 1 diff --git a/tsc/testdata/baselines/reference/compiler/arrayFakeFlatNoCrashInferenceDeclarations.types b/tsc/testdata/baselines/reference/compiler/arrayFakeFlatNoCrashInferenceDeclarations.types index 85d6c698407c7..aa3a27b2ec541 100644 --- a/tsc/testdata/baselines/reference/compiler/arrayFakeFlatNoCrashInferenceDeclarations.types +++ b/tsc/testdata/baselines/reference/compiler/arrayFakeFlatNoCrashInferenceDeclarations.types @@ -9,7 +9,7 @@ type BadFlatArray = {obj: { >"done" : Arr "recur": Arr extends ReadonlyArray ->"recur" : Arr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: any; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]]]]]] extends infer T ? T extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]]]]]] ? T extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]]]]] extends infer T_1 ? T_1 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]]]]] ? T_1 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]]]] extends infer T_2 ? T_2 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]]]] ? T_2 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]]] extends infer T_3 ? T_3 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]]] ? T_3 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]] extends infer T_4 ? T_4 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]]] ? T_4 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]] extends infer T_5 ? T_5 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]]] ? T_5 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]] extends infer T_6 ? T_6 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]]] ? T_6 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]] extends infer T_7 ? T_7 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]]] ? T_7 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]] extends infer T_8 ? T_8 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]]] ? T_8 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]] extends infer T_9 ? T_9 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]] ? T_9 extends -1 ? "done" : "recur" : never : never] : InnerArr; }[[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth] extends infer T_10 ? T_10 extends [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth] ? T_10 extends -1 ? "done" : "recur" : never : never] : Arr +>"recur" : Arr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: InnerArr extends readonly (infer InnerArr)[] ? { done: InnerArr; recur: any; }[any] : InnerArr; }[any] : InnerArr; }[any] : InnerArr; }[any] : InnerArr; }[any] : InnerArr; }[any] : InnerArr; }[any] : InnerArr; }[any] : InnerArr; }[any] : InnerArr; }[any] : InnerArr; }[any] : Arr ? BadFlatArray >-1 : -1 diff --git a/tsc/testdata/baselines/reference/compiler/classExpressionInClassStaticDeclarations.errors.txt b/tsc/testdata/baselines/reference/compiler/classExpressionInClassStaticDeclarations.errors.txt new file mode 100644 index 0000000000000..7bbc4bf3ba43e --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/classExpressionInClassStaticDeclarations.errors.txt @@ -0,0 +1,9 @@ +classExpressionInClassStaticDeclarations.ts(2,12): error TS5088: The inferred type of 'D' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + + +==== classExpressionInClassStaticDeclarations.ts (1 errors) ==== + class C { + static D = class extends C {}; + ~ +!!! error TS5088: The inferred type of 'D' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + } \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/classExpressionInClassStaticDeclarations.js b/tsc/testdata/baselines/reference/compiler/classExpressionInClassStaticDeclarations.js index fabf7638fd32b..1bc442c3e455a 100644 --- a/tsc/testdata/baselines/reference/compiler/classExpressionInClassStaticDeclarations.js +++ b/tsc/testdata/baselines/reference/compiler/classExpressionInClassStaticDeclarations.js @@ -11,12 +11,3 @@ class C { } C.D = class extends C { }; - - -//// [classExpressionInClassStaticDeclarations.d.ts] -declare class C { - static D: { - new (): {}; - D: /*elided*/ any; - }; -} diff --git a/tsc/testdata/baselines/reference/compiler/declFileTypeofFunction.errors.txt b/tsc/testdata/baselines/reference/compiler/declFileTypeofFunction.errors.txt new file mode 100644 index 0000000000000..62433e72e8d75 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/declFileTypeofFunction.errors.txt @@ -0,0 +1,41 @@ +declFileTypeofFunction.ts(20,5): error TS5088: The inferred type of 'foo3' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. +declFileTypeofFunction.ts(23,5): error TS5088: The inferred type of 'x' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + + +==== declFileTypeofFunction.ts (2 errors) ==== + function f(n: typeof f): string; + function f(n: typeof g): string; + function f() { return undefined; } + function g(n: typeof g): number; + function g(n: typeof f): number; + function g() { return undefined; } + + var b: () => typeof b; + + function b1() { + return b1; + } + + function foo(): typeof foo { + return null; + } + var foo1: typeof foo; + var foo2 = foo; + + var foo3 = function () { + ~~~~ +!!! error TS5088: The inferred type of 'foo3' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + return foo3; + } + var x = () => { + ~ +!!! error TS5088: The inferred type of 'x' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + return x; + } + + function foo5(x: number) { + function bar(x: number) { + return x; + } + return bar; + } \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/declFileTypeofFunction.js b/tsc/testdata/baselines/reference/compiler/declFileTypeofFunction.js index 6a0c032be1d71..53c82cc535bfb 100644 --- a/tsc/testdata/baselines/reference/compiler/declFileTypeofFunction.js +++ b/tsc/testdata/baselines/reference/compiler/declFileTypeofFunction.js @@ -59,18 +59,3 @@ function foo5(x) { } return bar; } - - -//// [declFileTypeofFunction.d.ts] -declare function f(n: typeof f): string; -declare function f(n: typeof g): string; -declare function g(n: typeof g): number; -declare function g(n: typeof f): number; -declare var b: () => typeof b; -declare function b1(): typeof b1; -declare function foo(): typeof foo; -declare var foo1: typeof foo; -declare var foo2: typeof foo; -declare var foo3: () => () => /*elided*/ any; -declare var x: () => () => /*elided*/ any; -declare function foo5(x: number): (x: number) => number; diff --git a/tsc/testdata/baselines/reference/compiler/declarationEmitInferredTypeAlias4.errors.txt b/tsc/testdata/baselines/reference/compiler/declarationEmitInferredTypeAlias4.errors.txt index beed1cd04564c..f4858319ecf28 100644 --- a/tsc/testdata/baselines/reference/compiler/declarationEmitInferredTypeAlias4.errors.txt +++ b/tsc/testdata/baselines/reference/compiler/declarationEmitInferredTypeAlias4.errors.txt @@ -1,8 +1,11 @@ +declarationEmitInferredTypeAlias4.ts(1,10): error TS5088: The inferred type of 'f' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. declarationEmitInferredTypeAlias4.ts(4,12): error TS2454: Variable 'x' is used before being assigned. -==== declarationEmitInferredTypeAlias4.ts (1 errors) ==== +==== declarationEmitInferredTypeAlias4.ts (2 errors) ==== function f() { + ~ +!!! error TS5088: The inferred type of 'f' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. type Foo = T | { x: Foo }; var x: Foo; return x; diff --git a/tsc/testdata/baselines/reference/compiler/declarationEmitInferredTypeAlias4.js b/tsc/testdata/baselines/reference/compiler/declarationEmitInferredTypeAlias4.js index fba79dc0aa8b5..00652e1bd00da 100644 --- a/tsc/testdata/baselines/reference/compiler/declarationEmitInferredTypeAlias4.js +++ b/tsc/testdata/baselines/reference/compiler/declarationEmitInferredTypeAlias4.js @@ -13,9 +13,3 @@ function f() { var x; return x; } - - -//// [declarationEmitInferredTypeAlias4.d.ts] -declare function f(): A[] | { - x: A[] | /*elided*/ any; -}; diff --git a/tsc/testdata/baselines/reference/compiler/declarationEmitStaticMethodNonIdentifierNames.errors.txt b/tsc/testdata/baselines/reference/compiler/declarationEmitStaticMethodNonIdentifierNames.errors.txt new file mode 100644 index 0000000000000..567eef6a3269f --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/declarationEmitStaticMethodNonIdentifierNames.errors.txt @@ -0,0 +1,74 @@ +declarationEmitStaticMethodNonIdentifierNames.ts(56,12): error TS5088: The inferred type of 'getRec' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + + +==== declarationEmitStaticMethodNonIdentifierNames.ts (1 errors) ==== + declare const uniqueSym: unique symbol; + + // none of these names can be written as `typeof Foo.` + export class Foo { + static #priv() { } + static getPriv() { + return Foo.#priv; + } + + static "quoted-name"() { } + static getQuoted() { + return Foo["quoted-name"]; + } + + static ["computed-name"]() { } + static getComputed() { + return Foo["computed-name"]; + } + + static 1() { } + static getNumeric() { + return Foo[1]; + } + + static [uniqueSym]() { } + static getUnique() { + return Foo[uniqueSym]; + } + + // property types go through the same path + static privRef = Foo.#priv; + } + + // identifier names still use `typeof` + export class Writable { + static normalName() { } + static getNormal() { + return Writable.normalName; + } + + static $dollar() { } + static getDollar() { + return Writable.$dollar; + } + } + + export class Generic { + static #priv(x: T): T { return x; } + static getPriv() { + return Generic.#priv; + } + } + + export class Recursive { + static #rec() { return Recursive.#rec; } + static getRec() { + ~~~~~~ +!!! error TS5088: The inferred type of 'getRec' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + return Recursive.#rec; + } + } + + // instance members already fall back to a structural type + export class Instance { + #priv() { } + getPriv() { + return this.#priv; + } + } + \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/declarationEmitStaticMethodNonIdentifierNames.js b/tsc/testdata/baselines/reference/compiler/declarationEmitStaticMethodNonIdentifierNames.js index 8eddf980c03a8..22995a34b56a3 100644 --- a/tsc/testdata/baselines/reference/compiler/declarationEmitStaticMethodNonIdentifierNames.js +++ b/tsc/testdata/baselines/reference/compiler/declarationEmitStaticMethodNonIdentifierNames.js @@ -126,39 +126,3 @@ export class Instance { return this.#priv; } } - - -//// [declarationEmitStaticMethodNonIdentifierNames.d.ts] -declare const uniqueSym: unique symbol; -export declare class Foo { - #private; - static getPriv(): () => void; - static "quoted-name"(): void; - static getQuoted(): () => void; - static ["computed-name"](): void; - static getComputed(): () => void; - static 1(): void; - static getNumeric(): () => void; - static [uniqueSym](): void; - static getUnique(): () => void; - static privRef: () => void; -} -export declare class Writable { - static normalName(): void; - static getNormal(): typeof Writable.normalName; - static $dollar(): void; - static getDollar(): typeof Writable.$dollar; -} -export declare class Generic { - #private; - static getPriv(): (x: T) => T; -} -export declare class Recursive { - #private; - static getRec(): () => /*elided*/ any; -} -export declare class Instance { - #private; - getPriv(): () => void; -} -export {}; diff --git a/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.errors.txt b/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.errors.txt new file mode 100644 index 0000000000000..befe74a90fcbd --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.errors.txt @@ -0,0 +1,54 @@ +growing.ts(1,17): error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed. +local.ts(1,17): error TS5088: The inferred type of 'localArrow' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. +local.ts(5,17): error TS5088: The inferred type of 'localDeclaration' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. +local.ts(9,17): error TS5088: The inferred type of 'localInstantiation' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. +local.ts(13,14): error TS5088: The inferred type of 'object' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + + +==== local.ts (4 errors) ==== + export function localArrow() { + ~~~~~~~~~~ +!!! error TS5088: The inferred type of 'localArrow' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + const inner = () => inner; + return inner; + } + export function localDeclaration() { + ~~~~~~~~~~~~~~~~ +!!! error TS5088: The inferred type of 'localDeclaration' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + function inner() { return inner; } + return inner; + } + export function localInstantiation() { + ~~~~~~~~~~~~~~~~~~ +!!! error TS5088: The inferred type of 'localInstantiation' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + function inner(): typeof inner { return inner; } + return inner; + } + export const object = { + ~~~~~~ +!!! error TS5088: The inferred type of 'object' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + self() { return object; } + }; + export const annotatedObject: { self(): typeof annotatedObject } = { + self() { return annotatedObject; } + }; + +==== growing.ts (1 errors) ==== + export function grow(value: T) { + ~~~~ +!!! error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed. + return { + value, + deeper: (next: U) => grow({ ...value, ...next }), + }; + } + +==== annotatedLocal.ts (0 errors) ==== + interface Recursive { + (): Recursive; + } + export function local(): Recursive { + const inner = () => inner; + return inner; + } + \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.js b/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.js new file mode 100644 index 0000000000000..459a409101941 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.js @@ -0,0 +1,79 @@ +//// [tests/cases/compiler/declarationEmitUnserializableTypes.ts] //// + +//// [local.ts] +export function localArrow() { + const inner = () => inner; + return inner; +} +export function localDeclaration() { + function inner() { return inner; } + return inner; +} +export function localInstantiation() { + function inner(): typeof inner { return inner; } + return inner; +} +export const object = { + self() { return object; } +}; +export const annotatedObject: { self(): typeof annotatedObject } = { + self() { return annotatedObject; } +}; + +//// [growing.ts] +export function grow(value: T) { + return { + value, + deeper: (next: U) => grow({ ...value, ...next }), + }; +} + +//// [annotatedLocal.ts] +interface Recursive { + (): Recursive; +} +export function local(): Recursive { + const inner = () => inner; + return inner; +} + + +//// [local.js] +export function localArrow() { + const inner = () => inner; + return inner; +} +export function localDeclaration() { + function inner() { return inner; } + return inner; +} +export function localInstantiation() { + function inner() { return inner; } + return inner; +} +export const object = { + self() { return object; } +}; +export const annotatedObject = { + self() { return annotatedObject; } +}; +//// [growing.js] +export function grow(value) { + return { + value, + deeper: (next) => grow({ ...value, ...next }), + }; +} +//// [annotatedLocal.js] +export function local() { + const inner = () => inner; + return inner; +} + + +//// [annotatedLocal.d.ts] +interface Recursive { + (): Recursive; +} +export declare function local(): Recursive; +export {}; diff --git a/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.symbols b/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.symbols new file mode 100644 index 0000000000000..c6dd879aa9a84 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.symbols @@ -0,0 +1,100 @@ +//// [tests/cases/compiler/declarationEmitUnserializableTypes.ts] //// + +=== local.ts === +export function localArrow() { +>localArrow : Symbol(localArrow, Decl(local.ts, 0, 0)) + + const inner = () => inner; +>inner : Symbol(inner, Decl(local.ts, 1, 9)) +>inner : Symbol(inner, Decl(local.ts, 1, 9)) + + return inner; +>inner : Symbol(inner, Decl(local.ts, 1, 9)) +} +export function localDeclaration() { +>localDeclaration : Symbol(localDeclaration, Decl(local.ts, 3, 1)) + + function inner() { return inner; } +>inner : Symbol(inner, Decl(local.ts, 4, 36)) +>inner : Symbol(inner, Decl(local.ts, 4, 36)) + + return inner; +>inner : Symbol(inner, Decl(local.ts, 4, 36)) +} +export function localInstantiation() { +>localInstantiation : Symbol(localInstantiation, Decl(local.ts, 7, 1)) + + function inner(): typeof inner { return inner; } +>inner : Symbol(inner, Decl(local.ts, 8, 38)) +>T : Symbol(T, Decl(local.ts, 9, 19)) +>inner : Symbol(inner, Decl(local.ts, 8, 38)) +>T : Symbol(T, Decl(local.ts, 9, 19)) +>inner : Symbol(inner, Decl(local.ts, 8, 38)) +>T : Symbol(T, Decl(local.ts, 9, 19)) + + return inner; +>inner : Symbol(inner, Decl(local.ts, 8, 38)) +} +export const object = { +>object : Symbol(object, Decl(local.ts, 12, 12)) + + self() { return object; } +>self : Symbol(self, Decl(local.ts, 12, 23)) +>object : Symbol(object, Decl(local.ts, 12, 12)) + +}; +export const annotatedObject: { self(): typeof annotatedObject } = { +>annotatedObject : Symbol(annotatedObject, Decl(local.ts, 15, 12)) +>self : Symbol(self, Decl(local.ts, 15, 31)) +>annotatedObject : Symbol(annotatedObject, Decl(local.ts, 15, 12)) + + self() { return annotatedObject; } +>self : Symbol(self, Decl(local.ts, 15, 68)) +>annotatedObject : Symbol(annotatedObject, Decl(local.ts, 15, 12)) + +}; + +=== growing.ts === +export function grow(value: T) { +>grow : Symbol(grow, Decl(growing.ts, 0, 0)) +>T : Symbol(T, Decl(growing.ts, 0, 21)) +>value : Symbol(value, Decl(growing.ts, 0, 39)) +>T : Symbol(T, Decl(growing.ts, 0, 21)) + + return { + value, +>value : Symbol(value, Decl(growing.ts, 1, 12)) + + deeper: (next: U) => grow({ ...value, ...next }), +>deeper : Symbol(deeper, Decl(growing.ts, 2, 14)) +>U : Symbol(U, Decl(growing.ts, 3, 17)) +>next : Symbol(next, Decl(growing.ts, 3, 35)) +>U : Symbol(U, Decl(growing.ts, 3, 17)) +>grow : Symbol(grow, Decl(growing.ts, 0, 0)) +>T : Symbol(T, Decl(growing.ts, 0, 21)) +>U : Symbol(U, Decl(growing.ts, 3, 17)) +>value : Symbol(value, Decl(growing.ts, 0, 39)) +>next : Symbol(next, Decl(growing.ts, 3, 35)) + + }; +} + +=== annotatedLocal.ts === +interface Recursive { +>Recursive : Symbol(Recursive, Decl(annotatedLocal.ts, 0, 0)) + + (): Recursive; +>Recursive : Symbol(Recursive, Decl(annotatedLocal.ts, 0, 0)) +} +export function local(): Recursive { +>local : Symbol(local, Decl(annotatedLocal.ts, 2, 1)) +>Recursive : Symbol(Recursive, Decl(annotatedLocal.ts, 0, 0)) + + const inner = () => inner; +>inner : Symbol(inner, Decl(annotatedLocal.ts, 4, 9)) +>inner : Symbol(inner, Decl(annotatedLocal.ts, 4, 9)) + + return inner; +>inner : Symbol(inner, Decl(annotatedLocal.ts, 4, 9)) +} + diff --git a/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.types b/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.types new file mode 100644 index 0000000000000..493ce079f72b2 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/declarationEmitUnserializableTypes.types @@ -0,0 +1,98 @@ +//// [tests/cases/compiler/declarationEmitUnserializableTypes.ts] //// + +=== local.ts === +export function localArrow() { +>localArrow : () => () => any + + const inner = () => inner; +>inner : () => any +>() => inner : () => any +>inner : () => any + + return inner; +>inner : () => any +} +export function localDeclaration() { +>localDeclaration : () => () => any + + function inner() { return inner; } +>inner : () => any +>inner : () => any + + return inner; +>inner : () => any +} +export function localInstantiation() { +>localInstantiation : () => () => () => any + + function inner(): typeof inner { return inner; } +>inner : () => any +>inner : () => any +>inner : () => any +>inner : () => any + + return inner; +>inner : () => () => any +>inner : () => any +} +export const object = { +>object : { self(): any; } +>{ self() { return object; }} : { self(): { self(): any; }; } + + self() { return object; } +>self : () => { self(): any; } +>object : { self(): any; } + +}; +export const annotatedObject: { self(): typeof annotatedObject } = { +>annotatedObject : { self(): typeof annotatedObject; } +>self : () => typeof annotatedObject +>annotatedObject : { self(): typeof annotatedObject; } +>{ self() { return annotatedObject; }} : { self(): { self(): typeof annotatedObject; }; } + + self() { return annotatedObject; } +>self : () => { self(): typeof annotatedObject; } +>annotatedObject : { self(): typeof annotatedObject; } + +}; + +=== growing.ts === +export function grow(value: T) { +>grow : (value: T) => { value: T; deeper: (next: U) => { value: T & U; deeper: (next: U_1) => { value: T & U & U_1; deeper: (next: U_2) => { value: T & U & U_1 & U_2; deeper: (next: U_3) => { value: T & U & U_1 & U_2 & U_3; deeper: (next: U_4) => { value: T & U & U_1 & U_2 & U_3 & U_4; deeper: (next: U_5) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5; deeper: (next: U_6) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6; deeper: (next: U_7) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7; deeper: (next: U_8) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8; deeper: (next: U_9) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8 & U_9; deeper: (next: U_10) => any; }; }; }; }; }; }; }; }; }; }; } +>value : T + + return { +>{ value, deeper: (next: U) => grow({ ...value, ...next }), } : { value: T; deeper: (next: U) => { value: T & U; deeper: (next: U_1) => { value: T & U & U_1; deeper: (next: U_2) => { value: T & U & U_1 & U_2; deeper: (next: U_3) => { value: T & U & U_1 & U_2 & U_3; deeper: (next: U_4) => { value: T & U & U_1 & U_2 & U_3 & U_4; deeper: (next: U_5) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5; deeper: (next: U_6) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6; deeper: (next: U_7) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7; deeper: (next: U_8) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8; deeper: (next: U_9) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8 & U_9; deeper: (next: U_10) => any; }; }; }; }; }; }; }; }; }; }; } + + value, +>value : T + + deeper: (next: U) => grow({ ...value, ...next }), +>deeper : (next: U) => { value: T & U; deeper: (next: U_1) => any; } +>(next: U) => grow({ ...value, ...next }) : (next: U) => { value: T & U; deeper: (next: U_1) => any; } +>next : U +>grow({ ...value, ...next }) : { value: T & U; deeper: (next: U_1) => { value: T & U & U_1; deeper: (next: U_2) => { value: T & U & U_1 & U_2; deeper: (next: U_3) => { value: T & U & U_1 & U_2 & U_3; deeper: (next: U_4) => { value: T & U & U_1 & U_2 & U_3 & U_4; deeper: (next: U_5) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5; deeper: (next: U_6) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6; deeper: (next: U_7) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7; deeper: (next: U_8) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8; deeper: (next: U_9) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8 & U_9; deeper: (next: U_10) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8 & U_9 & U_10; deeper: (next: U_11) => any; }; }; }; }; }; }; }; }; }; }; } +>grow : (value: T) => { value: T; deeper: (next: U) => { value: T & U; deeper: (next: U_1) => { value: T & U & U_1; deeper: (next: U_2) => { value: T & U & U_1 & U_2; deeper: (next: U_3) => { value: T & U & U_1 & U_2 & U_3; deeper: (next: U_4) => { value: T & U & U_1 & U_2 & U_3 & U_4; deeper: (next: U_5) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5; deeper: (next: U_6) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6; deeper: (next: U_7) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7; deeper: (next: U_8) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8; deeper: (next: U_9) => { value: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8 & U_9; deeper: (next: U_10) => any; }; }; }; }; }; }; }; }; }; }; } +>{ ...value, ...next } : T & U +>value : T +>next : U + + }; +} + +=== annotatedLocal.ts === +interface Recursive { + (): Recursive; +} +export function local(): Recursive { +>local : () => Recursive + + const inner = () => inner; +>inner : () => any +>() => inner : () => any +>inner : () => any + + return inner; +>inner : () => any +} + diff --git a/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.errors.txt b/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.errors.txt new file mode 100644 index 0000000000000..7f8f189962df8 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.errors.txt @@ -0,0 +1,49 @@ +declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts(7,14): error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed. +declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts(22,14): error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed. + + +==== declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts (2 errors) ==== + // Both return types exceed the serializer's nesting limit. Declaration emit must report an error + // rather than silently replacing the remaining type with `any`. + + // Slightly simplified repro from https://github.com/microsoft/TypeScript/issues/30732 so it's easier to read and debug + export type Key = keyof U; + export type Value, U> = U[K]; + export const updateIfChanged = (t: T) => { + ~~~~~~~~~~~~~~~ +!!! error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed. + const reduce = (u: U, update: (u: U) => T) => { + const set = (newU: U) => Object.is(u, newU) ? t : update(newU); + return Object.assign( + >(key: K) => + reduce>(u[key as keyof U] as Value, (v: Value) => { + return update(Object.assign(Array.isArray(u) ? [] : {}, u, { [key]: v })); + }), + { map: (updater: (u: U) => U) => set(updater(u)), set }); + }; + return reduce(t, (t: T) => t); + }; + + // example from https://github.com/microsoft/TypeScript/issues/31605 + + export const testRecFun = (parent: T) => { + ~~~~~~~~~~ +!!! error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed. + return { + result: parent, + deeper: (child: U) => + testRecFun({ ...parent, ...child }) + }; + } + + + let p1 = testRecFun({ one: '1' }) + void p1.result.one; + let p2 = p1.deeper({ two: '2' }) + void p2.result.one; + void p2.result.two; + let p3 = p2.deeper({ three: '3' }) + void p3.result.one; + void p3.result.two; + void p3.result.three; + \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.js b/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.js index d0cb50966ad51..ca2968d99f78a 100644 --- a/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.js +++ b/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.js @@ -1,8 +1,8 @@ //// [tests/cases/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts] //// //// [declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts] -// Note that both of the following have an `any` in their return type from where we bottom out the type printout -// for having too many instances of the same symbol nesting. +// Both return types exceed the serializer's nesting limit. Declaration emit must report an error +// rather than silently replacing the remaining type with `any`. // Slightly simplified repro from https://github.com/microsoft/TypeScript/issues/30732 so it's easier to read and debug export type Key = keyof U; @@ -44,8 +44,8 @@ void p3.result.three; //// [declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.js] "use strict"; -// Note that both of the following have an `any` in their return type from where we bottom out the type printout -// for having too many instances of the same symbol nesting. +// Both return types exceed the serializer's nesting limit. Declaration emit must report an error +// rather than silently replacing the remaining type with `any`. Object.defineProperty(exports, "__esModule", { value: true }); exports.testRecFun = exports.updateIfChanged = void 0; const updateIfChanged = (t) => { @@ -75,82 +75,3 @@ let p3 = p2.deeper({ three: '3' }); void p3.result.one; void p3.result.two; void p3.result.three; - - -//// [declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.d.ts] -export type Key = keyof U; -export type Value, U> = U[K]; -export declare const updateIfChanged: (t: T) => (>(key: K) => (>>(key: K_1) => (>>>(key: K_2) => (>>>>(key: K_3) => (>>>>>(key: K_4) => (>>>>>>(key: K_5) => (>>>>>>>(key: K_6) => (>>>>>>>>(key: K_7) => (>>>>>>>>>(key: K_8) => (>>>>>>>>>>(key: K_9) => (>>>>>>>>>>>(key: K_10) => /*elided*/ any & { - map: (updater: (u: Value>>>>>>>>>>) => Value>>>>>>>>>>) => T; - set: (newU: Value>>>>>>>>>>) => T; -}) & { - map: (updater: (u: Value>>>>>>>>>) => Value>>>>>>>>>) => T; - set: (newU: Value>>>>>>>>>) => T; -}) & { - map: (updater: (u: Value>>>>>>>>) => Value>>>>>>>>) => T; - set: (newU: Value>>>>>>>>) => T; -}) & { - map: (updater: (u: Value>>>>>>>) => Value>>>>>>>) => T; - set: (newU: Value>>>>>>>) => T; -}) & { - map: (updater: (u: Value>>>>>>) => Value>>>>>>) => T; - set: (newU: Value>>>>>>) => T; -}) & { - map: (updater: (u: Value>>>>>) => Value>>>>>) => T; - set: (newU: Value>>>>>) => T; -}) & { - map: (updater: (u: Value>>>>) => Value>>>>) => T; - set: (newU: Value>>>>) => T; -}) & { - map: (updater: (u: Value>>>) => Value>>>) => T; - set: (newU: Value>>>) => T; -}) & { - map: (updater: (u: Value>>) => Value>>) => T; - set: (newU: Value>>) => T; -}) & { - map: (updater: (u: Value>) => Value>) => T; - set: (newU: Value>) => T; -}) & { - map: (updater: (u: Value) => Value) => T; - set: (newU: Value) => T; -}) & { - map: (updater: (u: T) => T) => T; - set: (newU: T) => T; -}; -export declare const testRecFun: (parent: T) => { - result: T; - deeper: (child: U) => { - result: T & U; - deeper: (child: U_1) => { - result: T & U & U_1; - deeper: (child: U_2) => { - result: T & U & U_1 & U_2; - deeper: (child: U_3) => { - result: T & U & U_1 & U_2 & U_3; - deeper: (child: U_4) => { - result: T & U & U_1 & U_2 & U_3 & U_4; - deeper: (child: U_5) => { - result: T & U & U_1 & U_2 & U_3 & U_4 & U_5; - deeper: (child: U_6) => { - result: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6; - deeper: (child: U_7) => { - result: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7; - deeper: (child: U_8) => { - result: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8; - deeper: (child: U_9) => { - result: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8 & U_9; - deeper: (child: U_10) => { - result: T & U & U_1 & U_2 & U_3 & U_4 & U_5 & U_6 & U_7 & U_8 & U_9 & U_10; - deeper: (child: U_11) => /*elided*/ any; - }; - }; - }; - }; - }; - }; - }; - }; - }; - }; - }; -}; diff --git a/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.symbols b/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.symbols index 75532047fccd6..9f7e757cc2fbc 100644 --- a/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.symbols +++ b/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.symbols @@ -1,8 +1,8 @@ //// [tests/cases/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts] //// === declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts === -// Note that both of the following have an `any` in their return type from where we bottom out the type printout -// for having too many instances of the same symbol nesting. +// Both return types exceed the serializer's nesting limit. Declaration emit must report an error +// rather than silently replacing the remaining type with `any`. // Slightly simplified repro from https://github.com/microsoft/TypeScript/issues/30732 so it's easier to read and debug export type Key = keyof U; diff --git a/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.types b/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.types index cb976db5fbaff..7f2a2be45949c 100644 --- a/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.types +++ b/tsc/testdata/baselines/reference/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.types @@ -1,8 +1,8 @@ //// [tests/cases/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts] //// === declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts === -// Note that both of the following have an `any` in their return type from where we bottom out the type printout -// for having too many instances of the same symbol nesting. +// Both return types exceed the serializer's nesting limit. Declaration emit must report an error +// rather than silently replacing the remaining type with `any`. // Slightly simplified repro from https://github.com/microsoft/TypeScript/issues/30732 so it's easier to read and debug export type Key = keyof U; @@ -12,8 +12,8 @@ export type Value, U> = U[K]; >Value : Value export const updateIfChanged = (t: T) => { ->updateIfChanged : (t: T) => (>(key: K) => (>>(key: K_1) => (>>>(key: K_2) => (>>>>(key: K_3) => (>>>>>(key: K_4) => (>>>>>>(key: K_5) => (>>>>>>>(key: K_6) => (>>>>>>>>(key: K_7) => (>>>>>>>>>(key: K_8) => (>>>>>>>>>>(key: K_9) => (>>>>>>>>>>>(key: K_10) => any & { map: (updater: (u: Value>>>>>>>>>>) => Value>>>>>>>>>>) => T; set: (newU: Value>>>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>>>) => Value>>>>>>>>>) => T; set: (newU: Value>>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>>) => Value>>>>>>>>) => T; set: (newU: Value>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>) => Value>>>>>>>) => T; set: (newU: Value>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>) => Value>>>>>>) => T; set: (newU: Value>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>) => Value>>>>>) => T; set: (newU: Value>>>>>) => T; }) & { map: (updater: (u: Value>>>>) => Value>>>>) => T; set: (newU: Value>>>>) => T; }) & { map: (updater: (u: Value>>>) => Value>>>) => T; set: (newU: Value>>>) => T; }) & { map: (updater: (u: Value>>) => Value>>) => T; set: (newU: Value>>) => T; }) & { map: (updater: (u: Value>) => Value>) => T; set: (newU: Value>) => T; }) & { map: (updater: (u: Value) => Value) => T; set: (newU: Value) => T; }) & { map: (updater: (u: T) => T) => T; set: (newU: T) => T; } ->(t: T) => { const reduce = (u: U, update: (u: U) => T) => { const set = (newU: U) => Object.is(u, newU) ? t : update(newU); return Object.assign( >(key: K) => reduce>(u[key as keyof U] as Value, (v: Value) => { return update(Object.assign(Array.isArray(u) ? [] : {}, u, { [key]: v })); }), { map: (updater: (u: U) => U) => set(updater(u)), set }); }; return reduce(t, (t: T) => t);} : (t: T) => (>(key: K) => (>>(key: K_1) => (>>>(key: K_2) => (>>>>(key: K_3) => (>>>>>(key: K_4) => (>>>>>>(key: K_5) => (>>>>>>>(key: K_6) => (>>>>>>>>(key: K_7) => (>>>>>>>>>(key: K_8) => (>>>>>>>>>>(key: K_9) => (>>>>>>>>>>>(key: K_10) => any & { map: (updater: (u: Value>>>>>>>>>>) => Value>>>>>>>>>>) => T; set: (newU: Value>>>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>>>) => Value>>>>>>>>>) => T; set: (newU: Value>>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>>) => Value>>>>>>>>) => T; set: (newU: Value>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>) => Value>>>>>>>) => T; set: (newU: Value>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>) => Value>>>>>>) => T; set: (newU: Value>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>) => Value>>>>>) => T; set: (newU: Value>>>>>) => T; }) & { map: (updater: (u: Value>>>>) => Value>>>>) => T; set: (newU: Value>>>>) => T; }) & { map: (updater: (u: Value>>>) => Value>>>) => T; set: (newU: Value>>>) => T; }) & { map: (updater: (u: Value>>) => Value>>) => T; set: (newU: Value>>) => T; }) & { map: (updater: (u: Value>) => Value>) => T; set: (newU: Value>) => T; }) & { map: (updater: (u: Value) => Value) => T; set: (newU: Value) => T; }) & { map: (updater: (u: T) => T) => T; set: (newU: T) => T; } +>updateIfChanged : (t: T) => (>(key: K) => (>>(key: K_1) => (>>>(key: K_2) => (>>>>(key: K_3) => (>>>>>(key: K_4) => (>>>>>>(key: K_5) => (>>>>>>>(key: K_6) => (>>>>>>>>(key: K_7) => (>>>>>>>>>(key: K_8) => (>>>>>>>>>>(key: K_9) => (>>>>>>>>>>>(key: K_10) => any & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { } +>(t: T) => { const reduce = (u: U, update: (u: U) => T) => { const set = (newU: U) => Object.is(u, newU) ? t : update(newU); return Object.assign( >(key: K) => reduce>(u[key as keyof U] as Value, (v: Value) => { return update(Object.assign(Array.isArray(u) ? [] : {}, u, { [key]: v })); }), { map: (updater: (u: U) => U) => set(updater(u)), set }); }; return reduce(t, (t: T) => t);} : (t: T) => (>(key: K) => (>>(key: K_1) => (>>>(key: K_2) => (>>>>(key: K_3) => (>>>>>(key: K_4) => (>>>>>>(key: K_5) => (>>>>>>>(key: K_6) => (>>>>>>>>(key: K_7) => (>>>>>>>>>(key: K_8) => (>>>>>>>>>>(key: K_9) => (>>>>>>>>>>>(key: K_10) => any & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { } >t : T const reduce = (u: U, update: (u: U) => T) => { @@ -97,7 +97,7 @@ export const updateIfChanged = (t: T) => { }; return reduce(t, (t: T) => t); ->reduce(t, (t: T) => t) : (>(key: K) => (>>(key: K_1) => (>>>(key: K_2) => (>>>>(key: K_3) => (>>>>>(key: K_4) => (>>>>>>(key: K_5) => (>>>>>>>(key: K_6) => (>>>>>>>>(key: K_7) => (>>>>>>>>>(key: K_8) => (>>>>>>>>>>(key: K_9) => (>>>>>>>>>>>(key: K_10) => any & { map: (updater: (u: Value>>>>>>>>>>) => Value>>>>>>>>>>) => T; set: (newU: Value>>>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>>>) => Value>>>>>>>>>) => T; set: (newU: Value>>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>>) => Value>>>>>>>>) => T; set: (newU: Value>>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>>) => Value>>>>>>>) => T; set: (newU: Value>>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>>) => Value>>>>>>) => T; set: (newU: Value>>>>>>) => T; }) & { map: (updater: (u: Value>>>>>) => Value>>>>>) => T; set: (newU: Value>>>>>) => T; }) & { map: (updater: (u: Value>>>>) => Value>>>>) => T; set: (newU: Value>>>>) => T; }) & { map: (updater: (u: Value>>>) => Value>>>) => T; set: (newU: Value>>>) => T; }) & { map: (updater: (u: Value>>) => Value>>) => T; set: (newU: Value>>) => T; }) & { map: (updater: (u: Value>) => Value>) => T; set: (newU: Value>) => T; }) & { map: (updater: (u: Value) => Value) => T; set: (newU: Value) => T; }) & { map: (updater: (u: T) => T) => T; set: (newU: T) => T; } +>reduce(t, (t: T) => t) : (>(key: K) => (>>(key: K_1) => (>>>(key: K_2) => (>>>>(key: K_3) => (>>>>>(key: K_4) => (>>>>>>(key: K_5) => (>>>>>>>(key: K_6) => (>>>>>>>>(key: K_7) => (>>>>>>>>>(key: K_8) => (>>>>>>>>>>(key: K_9) => (>>>>>>>>>>>(key: K_10) => any & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { }) & { } >reduce : (u: U, update: (u: U) => T) => (>(key: K) => (>>(key: K_1) => any & { map: (updater: (u: Value) => Value>) => T; set: (newU: Value) => T; }) & { map: (updater: (u: Value) => Value>) => T; set: (newU: Value) => T; }) & { map: (updater: (u: U) => U) => T; set: (newU: U) => T; } >t : T >(t: T) => t : (t: T) => T diff --git a/tsc/testdata/baselines/reference/compiler/emitClassExpressionInDeclarationFile.errors.txt b/tsc/testdata/baselines/reference/compiler/emitClassExpressionInDeclarationFile.errors.txt new file mode 100644 index 0000000000000..4f2b2899d9424 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/emitClassExpressionInDeclarationFile.errors.txt @@ -0,0 +1,36 @@ +emitClassExpressionInDeclarationFile.ts(5,12): error TS5088: The inferred type of 'circularReference' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + + +==== emitClassExpressionInDeclarationFile.ts (1 errors) ==== + export var simpleExample = class { + static getTags() { } + tags() { } + } + export var circularReference = class C { + ~~~~~~~~~~~~~~~~~ +!!! error TS5088: The inferred type of 'circularReference' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + static getTags(c: C): C { return c } + tags(c: C): C { return c } + } + + // repro from #15066 + export class FooItem { + foo(): void { } + name?: string; + } + + export type Constructor = new(...args: any[]) => T; + export function WithTags>(Base: T) { + return class extends Base { + static getTags(): void { } + tags(): void { } + } + } + + export class Test extends WithTags(FooItem) {} + + const test = new Test(); + + Test.getTags() + test.tags(); + \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/emitClassExpressionInDeclarationFile.js b/tsc/testdata/baselines/reference/compiler/emitClassExpressionInDeclarationFile.js index 30ce8bf51466b..5fb0a6eb4a94c 100644 --- a/tsc/testdata/baselines/reference/compiler/emitClassExpressionInDeclarationFile.js +++ b/tsc/testdata/baselines/reference/compiler/emitClassExpressionInDeclarationFile.js @@ -64,46 +64,3 @@ exports.Test = Test; const test = new Test(); Test.getTags(); test.tags(); - - -//// [emitClassExpressionInDeclarationFile.d.ts] -export declare var simpleExample: { - new (): { - tags(): void; - }; - getTags(): void; -}; -export declare var circularReference: { - new (): { - tags(c: /*elided*/ any): /*elided*/ any; - }; - getTags(c: { - tags(c: /*elided*/ any): /*elided*/ any; - }): { - tags(c: any): any; - }; -}; -export declare class FooItem { - foo(): void; - name?: string; -} -export type Constructor = new (...args: any[]) => T; -export declare function WithTags>(Base: T): { - new (...args: any[]): { - tags(): void; - foo(): void; - name?: string; - }; - getTags(): void; -} & T; -declare const Test_base: { - new (...args: any[]): { - tags(): void; - foo(): void; - name?: string; - }; - getTags(): void; -} & typeof FooItem; -export declare class Test extends Test_base { -} -export {}; diff --git a/tsc/testdata/baselines/reference/compiler/functionExpressionReturningItself.errors.txt b/tsc/testdata/baselines/reference/compiler/functionExpressionReturningItself.errors.txt new file mode 100644 index 0000000000000..8b09d0b9d51a8 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/functionExpressionReturningItself.errors.txt @@ -0,0 +1,7 @@ +functionExpressionReturningItself.ts(1,5): error TS5088: The inferred type of 'x' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + + +==== functionExpressionReturningItself.ts (1 errors) ==== + var x = function somefn() { return somefn; }; + ~ +!!! error TS5088: The inferred type of 'x' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/functionExpressionReturningItself.js b/tsc/testdata/baselines/reference/compiler/functionExpressionReturningItself.js index 279364408b5e4..cd806da15b038 100644 --- a/tsc/testdata/baselines/reference/compiler/functionExpressionReturningItself.js +++ b/tsc/testdata/baselines/reference/compiler/functionExpressionReturningItself.js @@ -6,7 +6,3 @@ var x = function somefn() { return somefn; }; //// [functionExpressionReturningItself.js] "use strict"; var x = function somefn() { return somefn; }; - - -//// [functionExpressionReturningItself.d.ts] -declare var x: () => () => /*elided*/ any; diff --git a/tsc/testdata/baselines/reference/compiler/noImplicitThisBigThis.errors.txt b/tsc/testdata/baselines/reference/compiler/noImplicitThisBigThis.errors.txt new file mode 100644 index 0000000000000..f4a4732e45395 --- /dev/null +++ b/tsc/testdata/baselines/reference/compiler/noImplicitThisBigThis.errors.txt @@ -0,0 +1,57 @@ +noImplicitThisBigThis.ts(3,10): error TS5088: The inferred type of 'createObj' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. +noImplicitThisBigThis.ts(17,10): error TS5088: The inferred type of 'createObjNoCrash' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + + +==== noImplicitThisBigThis.ts (2 errors) ==== + // https://github.com/microsoft/TypeScript/issues/29902 + + function createObj() { + ~~~~~~~~~ +!!! error TS5088: The inferred type of 'createObj' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + return { + func1() { + return this; + }, + func2() { + return this; + }, + func3() { + return this; + } + }; + } + + function createObjNoCrash() { + ~~~~~~~~~~~~~~~~ +!!! error TS5088: The inferred type of 'createObjNoCrash' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. + return { + func1() { + return this; + }, + func2() { + return this; + }, + func3() { + return this; + }, + func4() { + return this; + }, + func5() { + return this; + }, + func6() { + return this; + }, + func7() { + return this; + }, + func8() { + return this; + }, + func9() { + return this; + } + }; + } + \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/compiler/noImplicitThisBigThis.js b/tsc/testdata/baselines/reference/compiler/noImplicitThisBigThis.js index 5d48542f0ae8e..57b0614056a9f 100644 --- a/tsc/testdata/baselines/reference/compiler/noImplicitThisBigThis.js +++ b/tsc/testdata/baselines/reference/compiler/noImplicitThisBigThis.js @@ -97,124 +97,3 @@ function createObjNoCrash() { } }; } - - -//// [noImplicitThisBigThis.d.ts] -declare function createObj(): { - func1(): { - func1(): /*elided*/ any; - func2(): /*elided*/ any; - func3(): /*elided*/ any; - }; - func2(): { - func1(): any; - func2(): any; - func3(): any; - }; - func3(): { - func1(): any; - func2(): any; - func3(): any; - }; -}; -declare function createObjNoCrash(): { - func1(): { - func1(): /*elided*/ any; - func2(): /*elided*/ any; - func3(): /*elided*/ any; - func4(): /*elided*/ any; - func5(): /*elided*/ any; - func6(): /*elided*/ any; - func7(): /*elided*/ any; - func8(): /*elided*/ any; - func9(): /*elided*/ any; - }; - func2(): { - func1(): any; - func2(): any; - func3(): any; - func4(): any; - func5(): any; - func6(): any; - func7(): any; - func8(): any; - func9(): any; - }; - func3(): { - func1(): any; - func2(): any; - func3(): any; - func4(): any; - func5(): any; - func6(): any; - func7(): any; - func8(): any; - func9(): any; - }; - func4(): { - func1(): any; - func2(): any; - func3(): any; - func4(): any; - func5(): any; - func6(): any; - func7(): any; - func8(): any; - func9(): any; - }; - func5(): { - func1(): any; - func2(): any; - func3(): any; - func4(): any; - func5(): any; - func6(): any; - func7(): any; - func8(): any; - func9(): any; - }; - func6(): { - func1(): any; - func2(): any; - func3(): any; - func4(): any; - func5(): any; - func6(): any; - func7(): any; - func8(): any; - func9(): any; - }; - func7(): { - func1(): any; - func2(): any; - func3(): any; - func4(): any; - func5(): any; - func6(): any; - func7(): any; - func8(): any; - func9(): any; - }; - func8(): { - func1(): any; - func2(): any; - func3(): any; - func4(): any; - func5(): any; - func6(): any; - func7(): any; - func8(): any; - func9(): any; - }; - func9(): { - func1(): any; - func2(): any; - func3(): any; - func4(): any; - func5(): any; - func6(): any; - func7(): any; - func8(): any; - func9(): any; - }; -}; diff --git a/tsc/testdata/baselines/reference/compiler/recursiveConditionalCrash3.types b/tsc/testdata/baselines/reference/compiler/recursiveConditionalCrash3.types index 4158cf1d80c3c..91395d673fd4d 100644 --- a/tsc/testdata/baselines/reference/compiler/recursiveConditionalCrash3.types +++ b/tsc/testdata/baselines/reference/compiler/recursiveConditionalCrash3.types @@ -175,10 +175,10 @@ let y2: Expand */ type UseQueryOptions > = Expand ->UseQueryOptions : T extends CanBeExpanded ? T["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_2 ? T_2 extends T["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_2 extends CanBeExpanded ? T_2["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_3 ? T_3 extends T_2["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_3 extends CanBeExpanded ? T_3["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_4 ? T_4 extends T_3["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_4 extends CanBeExpanded ? T_4["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_5 ? T_5 extends T_4["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_5 extends CanBeExpanded ? T_5["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_6 ? T_6 extends T_5["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_6 extends CanBeExpanded ? T_6["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_7 ? T_7 extends T_6["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_7 extends CanBeExpanded ? T_7["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_8 ? T_8 extends T_7["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_8 extends CanBeExpanded ? T_8["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_9 ? T_9 extends T_8["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_9 extends CanBeExpanded ? T_9["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_10 ? T_10 extends T_9["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_10 extends CanBeExpanded ? T_10["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_11 ? T_11 extends T_10["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_11 extends CanBeExpanded ? any : T_11 extends (infer U)[] ? any[] : T_11 extends object ? { [K_1 in keyof T_11]-?: any; } : T_11 : never : never : T_10 extends (infer U)[] ? any[] : T_10 extends object ? { [K_1 in keyof T_10]-?: T_10[K_1] extends infer T_12 ? T_12 extends T_10[K_1] ? T_12 extends CanBeExpanded ? any : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: any; } : T_12 : never : never; } : T_10 : never : never : T_9 extends (infer U)[] ? any[] : T_9 extends object ? { [K_1 in keyof T_9]-?: T_9[K_1] extends infer T_12 ? T_12 extends T_9[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? any : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: any; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_15 ? T_15 extends T_12[K_2] ? T_15 extends CanBeExpanded ? any : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_3 in keyof T_15]-?: any; } : T_15 : never : never; } : T_12 : never : never; } : T_9 : never : never : T_8 extends (infer U)[] ? any[] : T_8 extends object ? { [K_1 in keyof T_8]-?: T_8[K_1] extends infer T_12 ? T_12 extends T_8[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? any : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: any; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_16 ? T_16 extends T_14[K_2] ? T_16 extends CanBeExpanded ? any : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_3 in keyof T_16]-?: any; } : T_16 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_16 ? T_16 extends T_12[K_2] ? T_16 extends CanBeExpanded ? T_16[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_17 ? T_17 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_17 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_16[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_17 ? T_17 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_17 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? any : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: any; } : T_18 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_3 in keyof T_16]-?: T_16[K_3] extends infer T_19 ? T_19 extends T_16[K_3] ? T_19 extends CanBeExpanded ? any : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_4 in keyof T_19]-?: T_19[K_4] extends infer T_20 ? T_20 extends T_19[K_4] ? T_20 extends CanBeExpanded ? T_20["default"] : T_20 : never : never; } : T_19 : never : never; } : T_16 : never : never; } : T_12 : never : never; } : T_8 : never : never : T_7 extends (infer U)[] ? any[] : T_7 extends object ? { [K_1 in keyof T_7]-?: T_7[K_1] extends infer T_12 ? T_12 extends T_7[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? any : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: any; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_17 ? T_17 extends T_15[K_2] ? T_17 extends CanBeExpanded ? any : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_3 in keyof T_17]-?: any; } : T_17 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_17 ? T_17 extends T_14[K_2] ? T_17 extends CanBeExpanded ? T_17[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_17[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? any : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: any; } : T_19 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_3 in keyof T_17]-?: T_17[K_3] extends infer T_20 ? T_20 extends T_17[K_3] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_4 in keyof T_20]-?: T_20[K_4] extends infer T_21 ? T_21 extends T_20[K_4] ? T_21 extends CanBeExpanded ? T_21["default"] : T_21 : never : never; } : T_20 : never : never; } : T_17 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_17 ? T_17 extends T_12[K_2] ? T_17 extends CanBeExpanded ? T_17[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_17[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: any; } : T_20 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_21 ? T_21 extends T_19[K_3] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_4 in keyof T_21]-?: T_21[K_4] extends infer T_22 ? T_22 extends T_21[K_4] ? T_22 extends CanBeExpanded ? T_22["default"] : T_22 : never : never; } : T_21 : never : never; } : T_19 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_3 in keyof T_17]-?: T_17[K_3] extends infer T_21 ? T_21 extends T_17[K_3] ? T_21 extends CanBeExpanded ? T_21[PrefixWith, K_3, "."> extends infer T_22 ? T_22 extends PrefixWith, K_3, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith, K_3, "."> extends infer T_22 ? T_22 extends PrefixWith, K_3, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_24 ? T_24 extends T_23[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_4 in keyof T_21]-?: T_21[K_4] extends infer T_24 ? T_24 extends T_21[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_21 : never : never; } : T_17 : never : never; } : T_12 : never : never; } : T_7 : never : never : T_6 extends (infer U)[] ? any[] : T_6 extends object ? { [K_1 in keyof T_6]-?: T_6[K_1] extends infer T_12 ? T_12 extends T_6[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? any : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: any; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_18 ? T_18 extends T_16[K_2] ? T_18 extends CanBeExpanded ? any : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: any; } : T_18 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_18 ? T_18 extends T_15[K_2] ? T_18 extends CanBeExpanded ? T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: any; } : T_20 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: T_18[K_3] extends infer T_21 ? T_21 extends T_18[K_3] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_4 in keyof T_21]-?: T_21[K_4] extends infer T_22 ? T_22 extends T_21[K_4] ? T_22 extends CanBeExpanded ? T_22["default"] : T_22 : never : never; } : T_21 : never : never; } : T_18 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_18 ? T_18 extends T_14[K_2] ? T_18 extends CanBeExpanded ? T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: any; } : T_21 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_22 ? T_22 extends T_20[K_3] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_4 in keyof T_22]-?: T_22[K_4] extends infer T_23 ? T_23 extends T_22[K_4] ? T_23 extends CanBeExpanded ? T_23["default"] : T_23 : never : never; } : T_22 : never : never; } : T_20 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: T_18[K_3] extends infer T_22 ? T_22 extends T_18[K_3] ? T_22 extends CanBeExpanded ? T_22[PrefixWith, K_3, "."> extends infer T_23 ? T_23 extends PrefixWith, K_3, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith, K_3, "."> extends infer T_23 ? T_23 extends PrefixWith, K_3, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_25 ? T_25 extends T_24[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_4 in keyof T_22]-?: T_22[K_4] extends infer T_25 ? T_25 extends T_22[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_22 : never : never; } : T_18 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_18 ? T_18 extends T_12[K_2] ? T_18 extends CanBeExpanded ? T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: any; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_23 ? T_23 extends T_21[K_3] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_24 ? T_24 extends T_23[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_23 : never : never; } : T_21 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_23 ? T_23 extends T_20[K_3] ? T_23 extends CanBeExpanded ? T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_26 ? T_26 extends T_23[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_23 : never : never; } : T_20 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: T_18[K_3] extends infer T_23 ? T_23 extends T_18[K_3] ? T_23 extends CanBeExpanded ? T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_27 ? T_27 extends T_25[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_27 ? T_27 extends T_23[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_23 : never : never; } : T_18 : never : never; } : T_12 : never : never; } : T_6 : never : never : T_5 extends (infer U)[] ? any[] : T_5 extends object ? { [K_1 in keyof T_5]-?: T_5[K_1] extends infer T_12 ? T_12 extends T_5[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? any : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: any; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_19 ? T_19 extends T_17[K_2] ? T_19 extends CanBeExpanded ? any : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: any; } : T_19 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_19 ? T_19 extends T_16[K_2] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: any; } : T_21 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_22 ? T_22 extends T_19[K_3] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_4 in keyof T_22]-?: T_22[K_4] extends infer T_23 ? T_23 extends T_22[K_4] ? T_23 extends CanBeExpanded ? T_23["default"] : T_23 : never : never; } : T_22 : never : never; } : T_19 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_19 ? T_19 extends T_15[K_2] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: any; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_23 ? T_23 extends T_21[K_3] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_24 ? T_24 extends T_23[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_23 : never : never; } : T_21 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_23 ? T_23 extends T_19[K_3] ? T_23 extends CanBeExpanded ? T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_26 ? T_26 extends T_23[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_23 : never : never; } : T_19 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_19 ? T_19 extends T_14[K_2] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: any; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_24 ? T_24 extends T_22[K_3] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_25 ? T_25 extends T_24[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_24 : never : never; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_24 ? T_24 extends T_21[K_3] ? T_24 extends CanBeExpanded ? T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_27 ? T_27 extends T_24[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_24 : never : never; } : T_21 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_24 ? T_24 extends T_19[K_3] ? T_24 extends CanBeExpanded ? T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_28 ? T_28 extends T_26[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_26 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_28 ? T_28 extends T_24[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_24 : never : never; } : T_19 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_19 ? T_19 extends T_12[K_2] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: any; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_25 ? T_25 extends T_23[K_3] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_25 ? T_25 extends T_22[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_28 ? T_28 extends T_25[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_25 : never : never; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_25 ? T_25 extends T_21[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_29 ? T_29 extends T_27[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_29 ? T_29 extends T_25[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_25 : never : never; } : T_21 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_25 ? T_25 extends T_19[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_30 ? T_30 extends T_28[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_30 ? T_30 extends T_25[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_25 : never : never; } : T_19 : never : never; } : T_12 : never : never; } : T_5 : never : never : T_4 extends (infer U)[] ? any[] : T_4 extends object ? { [K_1 in keyof T_4]-?: T_4[K_1] extends infer T_12 ? T_12 extends T_4[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? any : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_2 in keyof T_19]-?: any; } : T_19 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: T_18[K_2] extends infer T_20 ? T_20 extends T_18[K_2] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: any; } : T_20 : never : never; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_20 ? T_20 extends T_17[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: any; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_23 ? T_23 extends T_20[K_3] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_24 ? T_24 extends T_23[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_23 : never : never; } : T_20 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_20 ? T_20 extends T_16[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: any; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_24 ? T_24 extends T_22[K_3] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_25 ? T_25 extends T_24[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_24 : never : never; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_24 ? T_24 extends T_20[K_3] ? T_24 extends CanBeExpanded ? T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_27 ? T_27 extends T_24[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_24 : never : never; } : T_20 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_20 ? T_20 extends T_15[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: any; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_25 ? T_25 extends T_23[K_3] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_25 ? T_25 extends T_22[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_28 ? T_28 extends T_25[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_25 : never : never; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_25 ? T_25 extends T_20[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_29 ? T_29 extends T_27[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_29 ? T_29 extends T_25[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_25 : never : never; } : T_20 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_20 ? T_20 extends T_14[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: any; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_26 ? T_26 extends T_24[K_3] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_26 ? T_26 extends T_23[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_29 ? T_29 extends T_26[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_26 : never : never; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_26 ? T_26 extends T_22[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_30 ? T_30 extends T_28[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_30 ? T_30 extends T_26[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_26 : never : never; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_26 ? T_26 extends T_20[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_31 ? T_31 extends T_29[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_31 ? T_31 extends T_28[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_31 ? T_31 extends T_26[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_26 : never : never; } : T_20 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_20 ? T_20 extends T_12[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: any; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_27 ? T_27 extends T_25[K_3] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_27 ? T_27 extends T_24[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_27 ? T_27 extends T_23[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_31 ? T_31 extends T_29[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_31 ? T_31 extends T_27[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_27 : never : never; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_27 ? T_27 extends T_22[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_32 ? T_32 extends T_27[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_27 : never : never; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_27 ? T_27 extends T_20[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_33 ? T_33 extends T_29[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_33 ? T_33 extends T_27[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_27 : never : never; } : T_20 : never : never; } : T_12 : never : never; } : T_4 : never : never : T_3 extends (infer U)[] ? any[] : T_3 extends object ? { [K_1 in keyof T_3]-?: T_3[K_1] extends infer T_12 ? T_12 extends T_3[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_2 in keyof T_20]-?: any; } : T_20 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_2 in keyof T_19]-?: T_19[K_2] extends infer T_21 ? T_21 extends T_19[K_2] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: any; } : T_21 : never : never; } : T_19 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: T_18[K_2] extends infer T_21 ? T_21 extends T_18[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: any; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_24 ? T_24 extends T_21[K_3] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_25 ? T_25 extends T_24[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_24 : never : never; } : T_21 : never : never; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_21 ? T_21 extends T_17[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: any; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_25 ? T_25 extends T_23[K_3] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_25 ? T_25 extends T_21[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_28 ? T_28 extends T_25[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_25 : never : never; } : T_21 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_21 ? T_21 extends T_16[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: any; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_26 ? T_26 extends T_24[K_3] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_26 ? T_26 extends T_23[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_29 ? T_29 extends T_26[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_26 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_26 ? T_26 extends T_21[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_30 ? T_30 extends T_28[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_30 ? T_30 extends T_26[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_26 : never : never; } : T_21 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_21 ? T_21 extends T_15[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: any; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_27 ? T_27 extends T_25[K_3] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_27 ? T_27 extends T_24[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_27 ? T_27 extends T_23[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_31 ? T_31 extends T_29[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_31 ? T_31 extends T_27[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_27 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_27 ? T_27 extends T_21[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_32 ? T_32 extends T_27[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_27 : never : never; } : T_21 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_21 ? T_21 extends T_14[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: any; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_28 ? T_28 extends T_26[K_3] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_28 ? T_28 extends T_25[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_31 ? T_31 extends T_28[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_28 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_28 ? T_28 extends T_24[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_32 ? T_32 extends T_28[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_28 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_28 ? T_28 extends T_23[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_33 ? T_33 extends T_28[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_28 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_28 ? T_28 extends T_21[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_34 ? T_34 extends T_30[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_34 ? T_34 extends T_28[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_28 : never : never; } : T_21 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_21 ? T_21 extends T_12[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: any; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_29 ? T_29 extends T_27[K_3] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_29 ? T_29 extends T_26[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_29 ? T_29 extends T_25[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_33 ? T_33 extends T_29[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_29 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_29 ? T_29 extends T_24[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_34 ? T_34 extends T_29[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_29 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_29 ? T_29 extends T_23[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_35 ? T_35 extends T_31[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_35 ? T_35 extends T_29[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_29 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_29 ? T_29 extends T_21[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_36 ? T_36 extends T_32[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_36 ? T_36 extends T_31[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_36 ? T_36 extends T_29[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_29 : never : never; } : T_21 : never : never; } : T_12 : never : never; } : T_3 : never : never : T_2 extends (infer U)[] ? any[] : T_2 extends object ? { [K_1 in keyof T_2]-?: T_2[K_1] extends infer T_12 ? T_12 extends T_2[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? T_20[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_20[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_2 in keyof T_21]-?: any; } : T_21 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_2 in keyof T_20]-?: T_20[K_2] extends infer T_22 ? T_22 extends T_20[K_2] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: any; } : T_22 : never : never; } : T_20 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_2 in keyof T_19]-?: T_19[K_2] extends infer T_22 ? T_22 extends T_19[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: any; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_25 ? T_25 extends T_22[K_3] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never; } : T_22 : never : never; } : T_19 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: T_18[K_2] extends infer T_22 ? T_22 extends T_18[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: any; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_26 ? T_26 extends T_24[K_3] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_26 ? T_26 extends T_22[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_29 ? T_29 extends T_26[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_26 : never : never; } : T_22 : never : never; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_22 ? T_22 extends T_17[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: any; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_27 ? T_27 extends T_25[K_3] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_27 ? T_27 extends T_24[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_27 ? T_27 extends T_22[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_31 ? T_31 extends T_29[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_31 ? T_31 extends T_27[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_27 : never : never; } : T_22 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_22 ? T_22 extends T_16[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: any; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_28 ? T_28 extends T_26[K_3] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_28 ? T_28 extends T_25[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_31 ? T_31 extends T_28[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_28 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_28 ? T_28 extends T_24[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_32 ? T_32 extends T_28[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_28 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_28 ? T_28 extends T_22[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_33 ? T_33 extends T_28[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_28 : never : never; } : T_22 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_22 ? T_22 extends T_15[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: any; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_29 ? T_29 extends T_27[K_3] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_29 ? T_29 extends T_26[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_29 ? T_29 extends T_25[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_33 ? T_33 extends T_29[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_29 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_29 ? T_29 extends T_24[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_34 ? T_34 extends T_29[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_29 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_29 ? T_29 extends T_22[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_35 ? T_35 extends T_31[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_35 ? T_35 extends T_29[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_29 : never : never; } : T_22 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_22 ? T_22 extends T_14[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: any; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_30 ? T_30 extends T_28[K_3] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_30 ? T_30 extends T_27[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_30 ? T_30 extends T_26[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_34 ? T_34 extends T_30[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_30 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_30 ? T_30 extends T_25[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_35 ? T_35 extends T_30[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_30 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_30 ? T_30 extends T_24[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_36 ? T_36 extends T_32[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_36 ? T_36 extends T_30[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_30 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_30 ? T_30 extends T_22[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_37 ? T_37 extends T_34[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_37 ? T_37 extends T_33[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_37 ? T_37 extends T_32[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_37 ? T_37 extends T_30[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_30 : never : never; } : T_22 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_22 ? T_22 extends T_12[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_3 in keyof T_30]-?: any; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: T_29[K_3] extends infer T_31 ? T_31 extends T_29[K_3] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_31 ? T_31 extends T_28[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_31 ? T_31 extends T_27[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_35 ? T_35 extends T_31[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_31 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_31 ? T_31 extends T_26[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_36 ? T_36 extends T_31[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_31 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_31 ? T_31 extends T_25[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_37 ? T_37 extends T_34[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_37 ? T_37 extends T_33[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_37 ? T_37 extends T_31[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_31 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_31 ? T_31 extends T_24[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? any : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_38 ? T_38 extends T_37[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_38 ? T_38 extends T_36[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_38 ? T_38 extends T_35[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_38 ? T_38 extends T_34[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_38 ? T_38 extends T_33[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_38 ? T_38 extends T_31[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_31 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_31 ? T_31 extends T_22[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? any : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_39 ? T_39 extends T_38[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_39 ? T_39 extends T_37[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_39 ? T_39 extends T_36[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_39 ? T_39 extends T_35[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_39 ? T_39 extends T_34[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_39 ? T_39 extends T_33[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_39 ? T_39 extends T_31[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_31 : never : never; } : T_22 : never : never; } : T_12 : never : never; } : T_2 : never : never : T extends (infer U)[] ? any[] : T extends object ? { [K_1 in keyof T]-?: T[K_1] extends infer T_12 ? T_12 extends T[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? T_20[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_20[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_2 in keyof T_22]-?: any; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_2 in keyof T_21]-?: T_21[K_2] extends infer T_23 ? T_23 extends T_21[K_2] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: any; } : T_23 : never : never; } : T_21 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_2 in keyof T_20]-?: T_20[K_2] extends infer T_23 ? T_23 extends T_20[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: any; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_26 ? T_26 extends T_23[K_3] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never; } : T_23 : never : never; } : T_20 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_2 in keyof T_19]-?: T_19[K_2] extends infer T_23 ? T_23 extends T_19[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: any; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_27 ? T_27 extends T_25[K_3] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_27 ? T_27 extends T_23[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never; } : T_23 : never : never; } : T_19 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: T_18[K_2] extends infer T_23 ? T_23 extends T_18[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: any; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_28 ? T_28 extends T_26[K_3] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_28 ? T_28 extends T_25[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_31 ? T_31 extends T_28[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_28 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_28 ? T_28 extends T_23[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_32 ? T_32 extends T_28[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_28 : never : never; } : T_23 : never : never; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_23 ? T_23 extends T_17[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: any; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_29 ? T_29 extends T_27[K_3] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_29 ? T_29 extends T_26[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_29 ? T_29 extends T_25[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_33 ? T_33 extends T_29[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_29 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_29 ? T_29 extends T_23[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_34 ? T_34 extends T_29[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_29 : never : never; } : T_23 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_23 ? T_23 extends T_16[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: any; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_30 ? T_30 extends T_28[K_3] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_30 ? T_30 extends T_27[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_30 ? T_30 extends T_26[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_34 ? T_34 extends T_30[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_30 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_30 ? T_30 extends T_25[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_35 ? T_35 extends T_30[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_30 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_30 ? T_30 extends T_23[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_36 ? T_36 extends T_32[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_36 ? T_36 extends T_30[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_30 : never : never; } : T_23 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_23 ? T_23 extends T_15[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_3 in keyof T_30]-?: any; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: T_29[K_3] extends infer T_31 ? T_31 extends T_29[K_3] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_31 ? T_31 extends T_28[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_31 ? T_31 extends T_27[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_35 ? T_35 extends T_31[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_31 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_31 ? T_31 extends T_26[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_36 ? T_36 extends T_31[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_31 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_31 ? T_31 extends T_25[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_37 ? T_37 extends T_34[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_37 ? T_37 extends T_33[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_37 ? T_37 extends T_31[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_31 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_31 ? T_31 extends T_23[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? any : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_38 ? T_38 extends T_37[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_38 ? T_38 extends T_36[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_38 ? T_38 extends T_35[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_38 ? T_38 extends T_34[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_38 ? T_38 extends T_33[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_38 ? T_38 extends T_31[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_31 : never : never; } : T_23 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_23 ? T_23 extends T_14[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_3 in keyof T_31]-?: any; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_3 in keyof T_30]-?: T_30[K_3] extends infer T_32 ? T_32 extends T_30[K_3] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: T_29[K_3] extends infer T_32 ? T_32 extends T_29[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_32 ? T_32 extends T_28[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_36 ? T_36 extends T_32[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_32 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_32 ? T_32 extends T_27[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_37 ? T_37 extends T_34[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_37 ? T_37 extends T_32[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_32 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_32 ? T_32 extends T_26[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? any : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_38 ? T_38 extends T_37[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_38 ? T_38 extends T_36[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_38 ? T_38 extends T_35[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_38 ? T_38 extends T_34[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_38 ? T_38 extends T_32[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_32 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_32 ? T_32 extends T_25[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? any : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_39 ? T_39 extends T_38[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_39 ? T_39 extends T_37[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_39 ? T_39 extends T_36[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_39 ? T_39 extends T_35[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_39 ? T_39 extends T_34[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_39 ? T_39 extends T_32[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_32 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_32 ? T_32 extends T_23[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? T_38[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_39 ? T_39 extends T_38[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_39 extends CanBeExpanded ? any : T_39 extends (infer U)[] ? any[] : T_39 extends object ? { [K_4 in keyof T_39]-?: T_39[K_4] extends infer T_40 ? T_40 extends T_39[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_39 : never : never : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_40 ? T_40 extends T_38[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_40 ? T_40 extends T_37[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_40 ? T_40 extends T_36[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_40 ? T_40 extends T_35[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_40 ? T_40 extends T_34[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_40 ? T_40 extends T_32[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_32 : never : never; } : T_23 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_23 ? T_23 extends T_12[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_3 in keyof T_32]-?: any; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_3 in keyof T_31]-?: T_31[K_3] extends infer T_33 ? T_33 extends T_31[K_3] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_3 in keyof T_30]-?: T_30[K_3] extends infer T_33 ? T_33 extends T_30[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: T_29[K_3] extends infer T_33 ? T_33 extends T_29[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_37 ? T_37 extends T_33[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_33 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_33 ? T_33 extends T_28[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? any : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_38 ? T_38 extends T_37[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_38 ? T_38 extends T_36[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_38 ? T_38 extends T_35[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_38 ? T_38 extends T_33[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_33 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_33 ? T_33 extends T_27[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? any : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_39 ? T_39 extends T_38[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_39 ? T_39 extends T_37[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_39 ? T_39 extends T_36[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_39 ? T_39 extends T_35[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_39 ? T_39 extends T_33[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_33 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_33 ? T_33 extends T_26[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_39 ? T_39 extends T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_39 extends CanBeExpanded ? any : T_39 extends (infer U)[] ? any[] : T_39 extends object ? { [K_4 in keyof T_39]-?: T_39[K_4] extends infer T_40 ? T_40 extends T_39[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_39 : never : never : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_40 ? T_40 extends T_38[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_40 ? T_40 extends T_37[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_40 ? T_40 extends T_36[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_40 ? T_40 extends T_35[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_40 ? T_40 extends T_33[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_33 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_33 ? T_33 extends T_25[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_39 ? T_39 extends T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_39 extends CanBeExpanded ? T_39[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_40 ? T_40 extends T_39[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_40 extends CanBeExpanded ? any : T_40 extends (infer U)[] ? any[] : T_40 extends object ? { [K_4 in keyof T_40]-?: T_40[K_4] extends infer T_41 ? T_41 extends T_40[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_40 : never : never : T_39 extends (infer U)[] ? any[] : T_39 extends object ? { [K_4 in keyof T_39]-?: T_39[K_4] extends infer T_41 ? T_41 extends T_39[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_39 : never : never : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_41 ? T_41 extends T_38[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_41 ? T_41 extends T_37[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_41 ? T_41 extends T_36[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_41 ? T_41 extends T_35[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_41 ? T_41 extends T_33[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_33 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_33 ? T_33 extends T_23[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_39 ? T_39 extends T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_39 extends CanBeExpanded ? T_39[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_40 ? T_40 extends T_39[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_40 extends CanBeExpanded ? T_40[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_41 ? T_41 extends T_40[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_41 extends CanBeExpanded ? any : T_41 extends (infer U)[] ? any[] : T_41 extends object ? { [K_4 in keyof T_41]-?: T_41[K_4] extends infer T_42 ? T_42 extends T_41[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_41 : never : never : T_40 extends (infer U)[] ? any[] : T_40 extends object ? { [K_4 in keyof T_40]-?: T_40[K_4] extends infer T_42 ? T_42 extends T_40[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_40 : never : never : T_39 extends (infer U)[] ? any[] : T_39 extends object ? { [K_4 in keyof T_39]-?: T_39[K_4] extends infer T_42 ? T_42 extends T_39[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_39 : never : never : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_42 ? T_42 extends T_38[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_42 ? T_42 extends T_37[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_42 ? T_42 extends T_36[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_42 ? T_42 extends T_35[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_42 ? T_42 extends T_33[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_33 : never : never; } : T_23 : never : never; } : T_12 : never : never; } : T +>UseQueryOptions : T extends CanBeExpanded ? T["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_2 ? T_2 extends T["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_2 extends CanBeExpanded ? T_2["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_3 ? T_3 extends T_2["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_3 extends CanBeExpanded ? T_3["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_4 ? T_4 extends T_3["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_4 extends CanBeExpanded ? T_4["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_5 ? T_5 extends T_4["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_5 extends CanBeExpanded ? T_5["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_6 ? T_6 extends T_5["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_6 extends CanBeExpanded ? T_6["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_7 ? T_7 extends T_6["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_7 extends CanBeExpanded ? T_7["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_8 ? T_8 extends T_7["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_8 extends CanBeExpanded ? T_8["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_9 ? T_9 extends T_8["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_9 extends CanBeExpanded ? T_9["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_10 ? T_10 extends T_9["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_10 extends CanBeExpanded ? T_10["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_11 ? T_11 extends T_10["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_11 extends CanBeExpanded ? any : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any type UseQueryOptions2 = Expand_ ->UseQueryOptions2 : T extends CanBeExpanded ? T["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_2 ? T_2 extends T["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_2 extends CanBeExpanded ? T_2["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_3 ? T_3 extends T_2["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_3 extends CanBeExpanded ? T_3["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_4 ? T_4 extends T_3["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_4 extends CanBeExpanded ? T_4["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_5 ? T_5 extends T_4["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_5 extends CanBeExpanded ? T_5["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_6 ? T_6 extends T_5["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_6 extends CanBeExpanded ? T_6["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_7 ? T_7 extends T_6["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_7 extends CanBeExpanded ? T_7["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_8 ? T_8 extends T_7["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_8 extends CanBeExpanded ? T_8["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_9 ? T_9 extends T_8["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_9 extends CanBeExpanded ? T_9["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_10 ? T_10 extends T_9["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_10 extends CanBeExpanded ? T_10["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_11 ? T_11 extends T_10["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_11 extends CanBeExpanded ? any : T_11 extends (infer U)[] ? any[] : T_11 extends object ? { [K_1 in keyof T_11]-?: any; } : T_11 : never : never : T_10 extends (infer U)[] ? any[] : T_10 extends object ? { [K_1 in keyof T_10]-?: T_10[K_1] extends infer T_12 ? T_12 extends T_10[K_1] ? T_12 extends CanBeExpanded ? any : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: any; } : T_12 : never : never; } : T_10 : never : never : T_9 extends (infer U)[] ? any[] : T_9 extends object ? { [K_1 in keyof T_9]-?: T_9[K_1] extends infer T_12 ? T_12 extends T_9[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? any : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: any; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_15 ? T_15 extends T_12[K_2] ? T_15 extends CanBeExpanded ? any : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_3 in keyof T_15]-?: any; } : T_15 : never : never; } : T_12 : never : never; } : T_9 : never : never : T_8 extends (infer U)[] ? any[] : T_8 extends object ? { [K_1 in keyof T_8]-?: T_8[K_1] extends infer T_12 ? T_12 extends T_8[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? any : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: any; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_16 ? T_16 extends T_14[K_2] ? T_16 extends CanBeExpanded ? any : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_3 in keyof T_16]-?: any; } : T_16 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_16 ? T_16 extends T_12[K_2] ? T_16 extends CanBeExpanded ? T_16[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_17 ? T_17 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_17 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_16[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_17 ? T_17 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_17 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? any : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: any; } : T_18 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_3 in keyof T_16]-?: T_16[K_3] extends infer T_19 ? T_19 extends T_16[K_3] ? T_19 extends CanBeExpanded ? any : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_4 in keyof T_19]-?: T_19[K_4] extends infer T_20 ? T_20 extends T_19[K_4] ? T_20 extends CanBeExpanded ? T_20["default"] : T_20 : never : never; } : T_19 : never : never; } : T_16 : never : never; } : T_12 : never : never; } : T_8 : never : never : T_7 extends (infer U)[] ? any[] : T_7 extends object ? { [K_1 in keyof T_7]-?: T_7[K_1] extends infer T_12 ? T_12 extends T_7[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? any : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: any; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_17 ? T_17 extends T_15[K_2] ? T_17 extends CanBeExpanded ? any : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_3 in keyof T_17]-?: any; } : T_17 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_17 ? T_17 extends T_14[K_2] ? T_17 extends CanBeExpanded ? T_17[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_17[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? any : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: any; } : T_19 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_3 in keyof T_17]-?: T_17[K_3] extends infer T_20 ? T_20 extends T_17[K_3] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_4 in keyof T_20]-?: T_20[K_4] extends infer T_21 ? T_21 extends T_20[K_4] ? T_21 extends CanBeExpanded ? T_21["default"] : T_21 : never : never; } : T_20 : never : never; } : T_17 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_17 ? T_17 extends T_12[K_2] ? T_17 extends CanBeExpanded ? T_17[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_17[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_18 ? T_18 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_18 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: any; } : T_20 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_21 ? T_21 extends T_19[K_3] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_4 in keyof T_21]-?: T_21[K_4] extends infer T_22 ? T_22 extends T_21[K_4] ? T_22 extends CanBeExpanded ? T_22["default"] : T_22 : never : never; } : T_21 : never : never; } : T_19 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_3 in keyof T_17]-?: T_17[K_3] extends infer T_21 ? T_21 extends T_17[K_3] ? T_21 extends CanBeExpanded ? T_21[PrefixWith, K_3, "."> extends infer T_22 ? T_22 extends PrefixWith, K_3, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith, K_3, "."> extends infer T_22 ? T_22 extends PrefixWith, K_3, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_24 ? T_24 extends T_23[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_4 in keyof T_21]-?: T_21[K_4] extends infer T_24 ? T_24 extends T_21[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_21 : never : never; } : T_17 : never : never; } : T_12 : never : never; } : T_7 : never : never : T_6 extends (infer U)[] ? any[] : T_6 extends object ? { [K_1 in keyof T_6]-?: T_6[K_1] extends infer T_12 ? T_12 extends T_6[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? any : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: any; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_18 ? T_18 extends T_16[K_2] ? T_18 extends CanBeExpanded ? any : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: any; } : T_18 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_18 ? T_18 extends T_15[K_2] ? T_18 extends CanBeExpanded ? T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: any; } : T_20 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: T_18[K_3] extends infer T_21 ? T_21 extends T_18[K_3] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_4 in keyof T_21]-?: T_21[K_4] extends infer T_22 ? T_22 extends T_21[K_4] ? T_22 extends CanBeExpanded ? T_22["default"] : T_22 : never : never; } : T_21 : never : never; } : T_18 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_18 ? T_18 extends T_14[K_2] ? T_18 extends CanBeExpanded ? T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: any; } : T_21 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_22 ? T_22 extends T_20[K_3] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_4 in keyof T_22]-?: T_22[K_4] extends infer T_23 ? T_23 extends T_22[K_4] ? T_23 extends CanBeExpanded ? T_23["default"] : T_23 : never : never; } : T_22 : never : never; } : T_20 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: T_18[K_3] extends infer T_22 ? T_22 extends T_18[K_3] ? T_22 extends CanBeExpanded ? T_22[PrefixWith, K_3, "."> extends infer T_23 ? T_23 extends PrefixWith, K_3, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith, K_3, "."> extends infer T_23 ? T_23 extends PrefixWith, K_3, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_25 ? T_25 extends T_24[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_4 in keyof T_22]-?: T_22[K_4] extends infer T_25 ? T_25 extends T_22[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_22 : never : never; } : T_18 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_18 ? T_18 extends T_12[K_2] ? T_18 extends CanBeExpanded ? T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_18[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_19 ? T_19 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_19 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: any; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_23 ? T_23 extends T_21[K_3] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_24 ? T_24 extends T_23[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_23 : never : never; } : T_21 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_23 ? T_23 extends T_20[K_3] ? T_23 extends CanBeExpanded ? T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_26 ? T_26 extends T_23[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_23 : never : never; } : T_20 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_3 in keyof T_18]-?: T_18[K_3] extends infer T_23 ? T_23 extends T_18[K_3] ? T_23 extends CanBeExpanded ? T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_27 ? T_27 extends T_25[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_27 ? T_27 extends T_23[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_23 : never : never; } : T_18 : never : never; } : T_12 : never : never; } : T_6 : never : never : T_5 extends (infer U)[] ? any[] : T_5 extends object ? { [K_1 in keyof T_5]-?: T_5[K_1] extends infer T_12 ? T_12 extends T_5[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? any : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: any; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_19 ? T_19 extends T_17[K_2] ? T_19 extends CanBeExpanded ? any : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: any; } : T_19 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_19 ? T_19 extends T_16[K_2] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: any; } : T_21 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_22 ? T_22 extends T_19[K_3] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_4 in keyof T_22]-?: T_22[K_4] extends infer T_23 ? T_23 extends T_22[K_4] ? T_23 extends CanBeExpanded ? T_23["default"] : T_23 : never : never; } : T_22 : never : never; } : T_19 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_19 ? T_19 extends T_15[K_2] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: any; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_23 ? T_23 extends T_21[K_3] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_24 ? T_24 extends T_23[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_23 : never : never; } : T_21 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_23 ? T_23 extends T_19[K_3] ? T_23 extends CanBeExpanded ? T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith, K_3, "."> extends infer T_24 ? T_24 extends PrefixWith, K_3, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_26 ? T_26 extends T_23[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_23 : never : never; } : T_19 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_19 ? T_19 extends T_14[K_2] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: any; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_24 ? T_24 extends T_22[K_3] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_25 ? T_25 extends T_24[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_24 : never : never; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_24 ? T_24 extends T_21[K_3] ? T_24 extends CanBeExpanded ? T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_27 ? T_27 extends T_24[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_24 : never : never; } : T_21 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_24 ? T_24 extends T_19[K_3] ? T_24 extends CanBeExpanded ? T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_28 ? T_28 extends T_26[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_26 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_28 ? T_28 extends T_24[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_24 : never : never; } : T_19 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_19 ? T_19 extends T_12[K_2] ? T_19 extends CanBeExpanded ? T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_19[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_20 ? T_20 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_20 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: any; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_25 ? T_25 extends T_23[K_3] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_25 ? T_25 extends T_22[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_28 ? T_28 extends T_25[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_25 : never : never; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_25 ? T_25 extends T_21[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_29 ? T_29 extends T_27[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_29 ? T_29 extends T_25[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_25 : never : never; } : T_21 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_3 in keyof T_19]-?: T_19[K_3] extends infer T_25 ? T_25 extends T_19[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_30 ? T_30 extends T_28[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_30 ? T_30 extends T_25[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_25 : never : never; } : T_19 : never : never; } : T_12 : never : never; } : T_5 : never : never : T_4 extends (infer U)[] ? any[] : T_4 extends object ? { [K_1 in keyof T_4]-?: T_4[K_1] extends infer T_12 ? T_12 extends T_4[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? any : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_2 in keyof T_19]-?: any; } : T_19 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: T_18[K_2] extends infer T_20 ? T_20 extends T_18[K_2] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: any; } : T_20 : never : never; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_20 ? T_20 extends T_17[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: any; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_23 ? T_23 extends T_20[K_3] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_4 in keyof T_23]-?: T_23[K_4] extends infer T_24 ? T_24 extends T_23[K_4] ? T_24 extends CanBeExpanded ? T_24["default"] : T_24 : never : never; } : T_23 : never : never; } : T_20 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_20 ? T_20 extends T_16[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: any; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_24 ? T_24 extends T_22[K_3] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_25 ? T_25 extends T_24[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_24 : never : never; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_24 ? T_24 extends T_20[K_3] ? T_24 extends CanBeExpanded ? T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_24[PrefixWith, K_3, "."> extends infer T_25 ? T_25 extends PrefixWith, K_3, "."> ? T_25 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_27 ? T_27 extends T_24[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_24 : never : never; } : T_20 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_20 ? T_20 extends T_15[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: any; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_25 ? T_25 extends T_23[K_3] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_25 ? T_25 extends T_22[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_28 ? T_28 extends T_25[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_25 : never : never; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_25 ? T_25 extends T_20[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_29 ? T_29 extends T_27[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_29 ? T_29 extends T_25[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_25 : never : never; } : T_20 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_20 ? T_20 extends T_14[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: any; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_26 ? T_26 extends T_24[K_3] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_26 ? T_26 extends T_23[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_29 ? T_29 extends T_26[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_26 : never : never; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_26 ? T_26 extends T_22[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_30 ? T_30 extends T_28[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_30 ? T_30 extends T_26[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_26 : never : never; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_26 ? T_26 extends T_20[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_31 ? T_31 extends T_29[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_31 ? T_31 extends T_28[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_31 ? T_31 extends T_26[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_26 : never : never; } : T_20 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_20 ? T_20 extends T_12[K_2] ? T_20 extends CanBeExpanded ? T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_20[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_21 ? T_21 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_21 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: any; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_27 ? T_27 extends T_25[K_3] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_27 ? T_27 extends T_24[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_27 ? T_27 extends T_23[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_31 ? T_31 extends T_29[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_31 ? T_31 extends T_27[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_27 : never : never; } : T_23 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_27 ? T_27 extends T_22[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_32 ? T_32 extends T_27[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_27 : never : never; } : T_22 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_3 in keyof T_20]-?: T_20[K_3] extends infer T_27 ? T_27 extends T_20[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_33 ? T_33 extends T_29[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_33 ? T_33 extends T_27[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_27 : never : never; } : T_20 : never : never; } : T_12 : never : never; } : T_4 : never : never : T_3 extends (infer U)[] ? any[] : T_3 extends object ? { [K_1 in keyof T_3]-?: T_3[K_1] extends infer T_12 ? T_12 extends T_3[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? any : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_2 in keyof T_20]-?: any; } : T_20 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_2 in keyof T_19]-?: T_19[K_2] extends infer T_21 ? T_21 extends T_19[K_2] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: any; } : T_21 : never : never; } : T_19 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: T_18[K_2] extends infer T_21 ? T_21 extends T_18[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: any; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_24 ? T_24 extends T_21[K_3] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_4 in keyof T_24]-?: T_24[K_4] extends infer T_25 ? T_25 extends T_24[K_4] ? T_25 extends CanBeExpanded ? T_25["default"] : T_25 : never : never; } : T_24 : never : never; } : T_21 : never : never; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_21 ? T_21 extends T_17[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: any; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_25 ? T_25 extends T_23[K_3] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_25 ? T_25 extends T_21[K_3] ? T_25 extends CanBeExpanded ? T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_25[PrefixWith, K_3, "."> extends infer T_26 ? T_26 extends PrefixWith, K_3, "."> ? T_26 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_28 ? T_28 extends T_25[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_25 : never : never; } : T_21 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_21 ? T_21 extends T_16[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: any; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_26 ? T_26 extends T_24[K_3] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_26 ? T_26 extends T_23[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_29 ? T_29 extends T_26[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_26 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_26 ? T_26 extends T_21[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_30 ? T_30 extends T_28[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_30 ? T_30 extends T_26[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_26 : never : never; } : T_21 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_21 ? T_21 extends T_15[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: any; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_27 ? T_27 extends T_25[K_3] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_27 ? T_27 extends T_24[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_27 ? T_27 extends T_23[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_31 ? T_31 extends T_29[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_31 ? T_31 extends T_27[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_27 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_27 ? T_27 extends T_21[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_32 ? T_32 extends T_27[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_27 : never : never; } : T_21 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_21 ? T_21 extends T_14[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: any; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_28 ? T_28 extends T_26[K_3] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_28 ? T_28 extends T_25[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_31 ? T_31 extends T_28[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_28 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_28 ? T_28 extends T_24[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_32 ? T_32 extends T_28[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_28 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_28 ? T_28 extends T_23[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_33 ? T_33 extends T_28[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_28 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_28 ? T_28 extends T_21[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_34 ? T_34 extends T_30[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_34 ? T_34 extends T_28[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_28 : never : never; } : T_21 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_21 ? T_21 extends T_12[K_2] ? T_21 extends CanBeExpanded ? T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_23 ? T_23 extends T_21[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_22 ? T_22 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_22 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: any; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_29 ? T_29 extends T_27[K_3] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_29 ? T_29 extends T_26[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_29 ? T_29 extends T_25[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_33 ? T_33 extends T_29[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_29 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_29 ? T_29 extends T_24[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_34 ? T_34 extends T_29[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_29 : never : never; } : T_24 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_29 ? T_29 extends T_23[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_35 ? T_35 extends T_31[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_35 ? T_35 extends T_29[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_29 : never : never; } : T_23 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_3 in keyof T_21]-?: T_21[K_3] extends infer T_29 ? T_29 extends T_21[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_36 ? T_36 extends T_32[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_36 ? T_36 extends T_31[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_36 ? T_36 extends T_29[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_29 : never : never; } : T_21 : never : never; } : T_12 : never : never; } : T_3 : never : never : T_2 extends (infer U)[] ? any[] : T_2 extends object ? { [K_1 in keyof T_2]-?: T_2[K_1] extends infer T_12 ? T_12 extends T_2[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? T_20[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_20[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? any : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_2 in keyof T_21]-?: any; } : T_21 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_2 in keyof T_20]-?: T_20[K_2] extends infer T_22 ? T_22 extends T_20[K_2] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: any; } : T_22 : never : never; } : T_20 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_2 in keyof T_19]-?: T_19[K_2] extends infer T_22 ? T_22 extends T_19[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? any : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: any; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_25 ? T_25 extends T_22[K_3] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_4 in keyof T_25]-?: T_25[K_4] extends infer T_26 ? T_26 extends T_25[K_4] ? T_26 extends CanBeExpanded ? T_26["default"] : T_26 : never : never; } : T_25 : never : never; } : T_22 : never : never; } : T_19 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: T_18[K_2] extends infer T_22 ? T_22 extends T_18[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: any; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_26 ? T_26 extends T_24[K_3] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_26 ? T_26 extends T_22[K_3] ? T_26 extends CanBeExpanded ? T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_26[PrefixWith, K_3, "."> extends infer T_27 ? T_27 extends PrefixWith, K_3, "."> ? T_27 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_29 ? T_29 extends T_26[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_26 : never : never; } : T_22 : never : never; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_22 ? T_22 extends T_17[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: any; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_27 ? T_27 extends T_25[K_3] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_27 ? T_27 extends T_24[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_27 ? T_27 extends T_22[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_31 ? T_31 extends T_29[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_31 ? T_31 extends T_27[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_27 : never : never; } : T_22 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_22 ? T_22 extends T_16[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: any; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_28 ? T_28 extends T_26[K_3] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_28 ? T_28 extends T_25[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_31 ? T_31 extends T_28[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_28 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_28 ? T_28 extends T_24[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_32 ? T_32 extends T_28[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_28 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_28 ? T_28 extends T_22[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_33 ? T_33 extends T_28[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_28 : never : never; } : T_22 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_22 ? T_22 extends T_15[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: any; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_29 ? T_29 extends T_27[K_3] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_29 ? T_29 extends T_26[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_29 ? T_29 extends T_25[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_33 ? T_33 extends T_29[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_29 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_29 ? T_29 extends T_24[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_34 ? T_34 extends T_29[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_29 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_29 ? T_29 extends T_22[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_35 ? T_35 extends T_31[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_35 ? T_35 extends T_29[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_29 : never : never; } : T_22 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_22 ? T_22 extends T_14[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: any; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_30 ? T_30 extends T_28[K_3] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_30 ? T_30 extends T_27[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_30 ? T_30 extends T_26[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_34 ? T_34 extends T_30[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_30 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_30 ? T_30 extends T_25[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_35 ? T_35 extends T_30[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_30 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_30 ? T_30 extends T_24[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_36 ? T_36 extends T_32[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_36 ? T_36 extends T_30[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_30 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_30 ? T_30 extends T_22[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_37 ? T_37 extends T_34[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_37 ? T_37 extends T_33[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_37 ? T_37 extends T_32[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_37 ? T_37 extends T_30[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_30 : never : never; } : T_22 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_22 ? T_22 extends T_12[K_2] ? T_22 extends CanBeExpanded ? T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_24 ? T_24 extends T_22[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_24 extends CanBeExpanded ? T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_24[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_23 ? T_23 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_23 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_3 in keyof T_30]-?: any; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: T_29[K_3] extends infer T_31 ? T_31 extends T_29[K_3] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_31 ? T_31 extends T_28[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_31 ? T_31 extends T_27[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_35 ? T_35 extends T_31[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_31 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_31 ? T_31 extends T_26[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_36 ? T_36 extends T_31[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_31 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_31 ? T_31 extends T_25[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_37 ? T_37 extends T_34[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_37 ? T_37 extends T_33[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_37 ? T_37 extends T_31[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_31 : never : never; } : T_25 : never : never : T_24 extends (infer U)[] ? any[] : T_24 extends object ? { [K_3 in keyof T_24]-?: T_24[K_3] extends infer T_31 ? T_31 extends T_24[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? any : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_38 ? T_38 extends T_37[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_38 ? T_38 extends T_36[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_38 ? T_38 extends T_35[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_38 ? T_38 extends T_34[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_38 ? T_38 extends T_33[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_38 ? T_38 extends T_31[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_31 : never : never; } : T_24 : never : never : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_3 in keyof T_22]-?: T_22[K_3] extends infer T_31 ? T_31 extends T_22[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? any : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_39 ? T_39 extends T_38[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_39 ? T_39 extends T_37[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_39 ? T_39 extends T_36[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_39 ? T_39 extends T_35[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_39 ? T_39 extends T_34[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_39 ? T_39 extends T_33[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_39 ? T_39 extends T_31[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_31 : never : never; } : T_22 : never : never; } : T_12 : never : never; } : T_2 : never : never : T extends (infer U)[] ? any[] : T extends object ? { [K_1 in keyof T]-?: T[K_1] extends infer T_12 ? T_12 extends T[K_1] ? T_12 extends CanBeExpanded ? T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_14 ? T_14 extends T_12[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_14 extends CanBeExpanded ? T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_15 ? T_15 extends T_14[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_15 extends CanBeExpanded ? T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_16 ? T_16 extends T_15[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_16 extends CanBeExpanded ? T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_17 ? T_17 extends T_16[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_17 extends CanBeExpanded ? T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_18 ? T_18 extends T_17[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_18 extends CanBeExpanded ? T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_19 ? T_19 extends T_18[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_19 extends CanBeExpanded ? T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_20 ? T_20 extends T_19[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_20 extends CanBeExpanded ? T_20[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_21 ? T_21 extends T_20[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_21 extends CanBeExpanded ? T_21[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] extends infer T_22 ? T_22 extends T_21[`${string & K_1}` extends infer T_13 ? T_13 extends `${string & K_1}` ? T_13 extends SplitAC ? "value" : "default" : never : never] ? T_22 extends CanBeExpanded ? any : T_22 extends (infer U)[] ? any[] : T_22 extends object ? { [K_2 in keyof T_22]-?: any; } : T_22 : never : never : T_21 extends (infer U)[] ? any[] : T_21 extends object ? { [K_2 in keyof T_21]-?: T_21[K_2] extends infer T_23 ? T_23 extends T_21[K_2] ? T_23 extends CanBeExpanded ? any : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: any; } : T_23 : never : never; } : T_21 : never : never : T_20 extends (infer U)[] ? any[] : T_20 extends object ? { [K_2 in keyof T_20]-?: T_20[K_2] extends infer T_23 ? T_23 extends T_20[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? any : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: any; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_26 ? T_26 extends T_23[K_3] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_4 in keyof T_26]-?: T_26[K_4] extends infer T_27 ? T_27 extends T_26[K_4] ? T_27 extends CanBeExpanded ? T_27["default"] : T_27 : never : never; } : T_26 : never : never; } : T_23 : never : never; } : T_20 : never : never : T_19 extends (infer U)[] ? any[] : T_19 extends object ? { [K_2 in keyof T_19]-?: T_19[K_2] extends infer T_23 ? T_23 extends T_19[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? any : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: any; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_27 ? T_27 extends T_25[K_3] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_28 ? T_28 extends T_27[K_4] ? T_28 extends CanBeExpanded ? T_28["default"] : T_28 : never : never; } : T_27 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_27 ? T_27 extends T_23[K_3] ? T_27 extends CanBeExpanded ? T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_27[PrefixWith, K_3, "."> extends infer T_28 ? T_28 extends PrefixWith, K_3, "."> ? T_28 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_4 in keyof T_27]-?: T_27[K_4] extends infer T_30 ? T_30 extends T_27[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_27 : never : never; } : T_23 : never : never; } : T_19 : never : never : T_18 extends (infer U)[] ? any[] : T_18 extends object ? { [K_2 in keyof T_18]-?: T_18[K_2] extends infer T_23 ? T_23 extends T_18[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? any : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: any; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_28 ? T_28 extends T_26[K_3] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_29 ? T_29 extends T_28[K_4] ? T_29 extends CanBeExpanded ? T_29["default"] : T_29 : never : never; } : T_28 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_28 ? T_28 extends T_25[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_31 ? T_31 extends T_28[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_28 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_28 ? T_28 extends T_23[K_3] ? T_28 extends CanBeExpanded ? T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_28[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith, K_3, "."> extends infer T_29 ? T_29 extends PrefixWith, K_3, "."> ? T_29 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_32 ? T_32 extends T_30[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_30 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_4 in keyof T_28]-?: T_28[K_4] extends infer T_32 ? T_32 extends T_28[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_28 : never : never; } : T_23 : never : never; } : T_18 : never : never : T_17 extends (infer U)[] ? any[] : T_17 extends object ? { [K_2 in keyof T_17]-?: T_17[K_2] extends infer T_23 ? T_23 extends T_17[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? any : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: any; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_29 ? T_29 extends T_27[K_3] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_30 ? T_30 extends T_29[K_4] ? T_30 extends CanBeExpanded ? T_30["default"] : T_30 : never : never; } : T_29 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_29 ? T_29 extends T_26[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_32 ? T_32 extends T_29[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_29 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_29 ? T_29 extends T_25[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_33 ? T_33 extends T_31[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_33 ? T_33 extends T_29[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_29 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_29 ? T_29 extends T_23[K_3] ? T_29 extends CanBeExpanded ? T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_29[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_30 ? T_30 extends PrefixWith, K_3, "."> ? T_30 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_4 in keyof T_29]-?: T_29[K_4] extends infer T_34 ? T_34 extends T_29[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_29 : never : never; } : T_23 : never : never; } : T_17 : never : never : T_16 extends (infer U)[] ? any[] : T_16 extends object ? { [K_2 in keyof T_16]-?: T_16[K_2] extends infer T_23 ? T_23 extends T_16[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? any : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: any; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_30 ? T_30 extends T_28[K_3] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_31 ? T_31 extends T_30[K_4] ? T_31 extends CanBeExpanded ? T_31["default"] : T_31 : never : never; } : T_30 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_30 ? T_30 extends T_27[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_33 ? T_33 extends T_30[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_30 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_30 ? T_30 extends T_26[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_34 ? T_34 extends T_32[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_34 ? T_34 extends T_30[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_30 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_30 ? T_30 extends T_25[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_35 ? T_35 extends T_30[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_30 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_30 ? T_30 extends T_23[K_3] ? T_30 extends CanBeExpanded ? T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_30[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_32[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_31 ? T_31 extends PrefixWith, K_3, "."> ? T_31 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_36 ? T_36 extends T_32[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_32 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_4 in keyof T_30]-?: T_30[K_4] extends infer T_36 ? T_36 extends T_30[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_30 : never : never; } : T_23 : never : never; } : T_16 : never : never : T_15 extends (infer U)[] ? any[] : T_15 extends object ? { [K_2 in keyof T_15]-?: T_15[K_2] extends infer T_23 ? T_23 extends T_15[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? any : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_3 in keyof T_30]-?: any; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: T_29[K_3] extends infer T_31 ? T_31 extends T_29[K_3] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_32 ? T_32 extends T_31[K_4] ? T_32 extends CanBeExpanded ? T_32["default"] : T_32 : never : never; } : T_31 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_31 ? T_31 extends T_28[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_34 ? T_34 extends T_31[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_31 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_31 ? T_31 extends T_27[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_35 ? T_35 extends T_33[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_35 ? T_35 extends T_31[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_31 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_31 ? T_31 extends T_26[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_36 ? T_36 extends T_31[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_31 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_31 ? T_31 extends T_25[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_37 ? T_37 extends T_34[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_37 ? T_37 extends T_33[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_37 ? T_37 extends T_31[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_31 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_31 ? T_31 extends T_23[K_3] ? T_31 extends CanBeExpanded ? T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_33 ? T_33 extends T_31[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_33[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_32 ? T_32 extends PrefixWith, K_3, "."> ? T_32 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? any : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_38 ? T_38 extends T_37[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_38 ? T_38 extends T_36[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_38 ? T_38 extends T_35[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_38 ? T_38 extends T_34[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_34 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_38 ? T_38 extends T_33[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_33 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_4 in keyof T_31]-?: T_31[K_4] extends infer T_38 ? T_38 extends T_31[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_31 : never : never; } : T_23 : never : never; } : T_15 : never : never : T_14 extends (infer U)[] ? any[] : T_14 extends object ? { [K_2 in keyof T_14]-?: T_14[K_2] extends infer T_23 ? T_23 extends T_14[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? any : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_3 in keyof T_31]-?: any; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_3 in keyof T_30]-?: T_30[K_3] extends infer T_32 ? T_32 extends T_30[K_3] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_33 ? T_33 extends T_32[K_4] ? T_33 extends CanBeExpanded ? T_33["default"] : T_33 : never : never; } : T_32 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: T_29[K_3] extends infer T_32 ? T_32 extends T_29[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? any : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_35 ? T_35 extends T_34[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_35 ? T_35 extends T_32[K_4] ? T_35 extends CanBeExpanded ? T_35["default"] : T_35 : never : never; } : T_32 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_32 ? T_32 extends T_28[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_36 ? T_36 extends T_34[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_36 ? T_36 extends T_32[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_32 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_32 ? T_32 extends T_27[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_37 ? T_37 extends T_34[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_37 ? T_37 extends T_32[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_32 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_32 ? T_32 extends T_26[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? any : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_38 ? T_38 extends T_37[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_38 ? T_38 extends T_36[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_38 ? T_38 extends T_35[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_38 ? T_38 extends T_34[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_38 ? T_38 extends T_32[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_32 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_32 ? T_32 extends T_25[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? any : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_39 ? T_39 extends T_38[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_39 ? T_39 extends T_37[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_39 ? T_39 extends T_36[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_39 ? T_39 extends T_35[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_39 ? T_39 extends T_34[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_39 ? T_39 extends T_32[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_32 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_32 ? T_32 extends T_23[K_3] ? T_32 extends CanBeExpanded ? T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_34 ? T_34 extends T_32[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_34 extends CanBeExpanded ? T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_34[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? T_38[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] extends infer T_39 ? T_39 extends T_38[PrefixWith, K_3, "."> extends infer T_33 ? T_33 extends PrefixWith, K_3, "."> ? T_33 extends SplitAC ? "value" : "default" : never : never] ? T_39 extends CanBeExpanded ? any : T_39 extends (infer U)[] ? any[] : T_39 extends object ? { [K_4 in keyof T_39]-?: T_39[K_4] extends infer T_40 ? T_40 extends T_39[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_39 : never : never : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_40 ? T_40 extends T_38[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_40 ? T_40 extends T_37[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_40 ? T_40 extends T_36[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_40 ? T_40 extends T_35[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_35 : never : never : T_34 extends (infer U)[] ? any[] : T_34 extends object ? { [K_4 in keyof T_34]-?: T_34[K_4] extends infer T_40 ? T_40 extends T_34[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_34 : never : never : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_4 in keyof T_32]-?: T_32[K_4] extends infer T_40 ? T_40 extends T_32[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_32 : never : never; } : T_23 : never : never; } : T_14 : never : never : T_12 extends (infer U)[] ? any[] : T_12 extends object ? { [K_2 in keyof T_12]-?: T_12[K_2] extends infer T_23 ? T_23 extends T_12[K_2] ? T_23 extends CanBeExpanded ? T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_25 ? T_25 extends T_23[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_25 extends CanBeExpanded ? T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_26 ? T_26 extends T_25[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_26 extends CanBeExpanded ? T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_27 ? T_27 extends T_26[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_27 extends CanBeExpanded ? T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_28 ? T_28 extends T_27[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_28 extends CanBeExpanded ? T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_29 ? T_29 extends T_28[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_29 extends CanBeExpanded ? T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_30 ? T_30 extends T_29[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_30 extends CanBeExpanded ? T_30[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_31 ? T_31 extends T_30[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_31 extends CanBeExpanded ? T_31[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] extends infer T_32 ? T_32 extends T_31[PrefixWith<`${string & K_1}`, K_2, "."> extends infer T_24 ? T_24 extends PrefixWith<`${string & K_1}`, K_2, "."> ? T_24 extends SplitAC ? "value" : "default" : never : never] ? T_32 extends CanBeExpanded ? any : T_32 extends (infer U)[] ? any[] : T_32 extends object ? { [K_3 in keyof T_32]-?: any; } : T_32 : never : never : T_31 extends (infer U)[] ? any[] : T_31 extends object ? { [K_3 in keyof T_31]-?: T_31[K_3] extends infer T_33 ? T_33 extends T_31[K_3] ? T_33 extends CanBeExpanded ? any : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_34 ? T_34 extends T_33[K_4] ? T_34 extends CanBeExpanded ? T_34["default"] : T_34 : never : never; } : T_33 : never : never; } : T_31 : never : never : T_30 extends (infer U)[] ? any[] : T_30 extends object ? { [K_3 in keyof T_30]-?: T_30[K_3] extends infer T_33 ? T_33 extends T_30[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? any : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_36 ? T_36 extends T_35[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_36 ? T_36 extends T_33[K_4] ? T_36 extends CanBeExpanded ? T_36["default"] : T_36 : never : never; } : T_33 : never : never; } : T_30 : never : never : T_29 extends (infer U)[] ? any[] : T_29 extends object ? { [K_3 in keyof T_29]-?: T_29[K_3] extends infer T_33 ? T_33 extends T_29[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? any : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_37 ? T_37 extends T_36[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_37 ? T_37 extends T_35[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_37 ? T_37 extends T_33[K_4] ? T_37 extends CanBeExpanded ? T_37["default"] : T_37 : never : never; } : T_33 : never : never; } : T_29 : never : never : T_28 extends (infer U)[] ? any[] : T_28 extends object ? { [K_3 in keyof T_28]-?: T_28[K_3] extends infer T_33 ? T_33 extends T_28[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? any : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_38 ? T_38 extends T_37[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_38 ? T_38 extends T_36[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_38 ? T_38 extends T_35[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_38 ? T_38 extends T_33[K_4] ? T_38 extends CanBeExpanded ? T_38["default"] : T_38 : never : never; } : T_33 : never : never; } : T_28 : never : never : T_27 extends (infer U)[] ? any[] : T_27 extends object ? { [K_3 in keyof T_27]-?: T_27[K_3] extends infer T_33 ? T_33 extends T_27[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? any : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_39 ? T_39 extends T_38[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_39 ? T_39 extends T_37[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_39 ? T_39 extends T_36[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_39 ? T_39 extends T_35[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_39 ? T_39 extends T_33[K_4] ? T_39 extends CanBeExpanded ? T_39["default"] : T_39 : never : never; } : T_33 : never : never; } : T_27 : never : never : T_26 extends (infer U)[] ? any[] : T_26 extends object ? { [K_3 in keyof T_26]-?: T_26[K_3] extends infer T_33 ? T_33 extends T_26[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_39 ? T_39 extends T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_39 extends CanBeExpanded ? any : T_39 extends (infer U)[] ? any[] : T_39 extends object ? { [K_4 in keyof T_39]-?: T_39[K_4] extends infer T_40 ? T_40 extends T_39[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_39 : never : never : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_40 ? T_40 extends T_38[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_40 ? T_40 extends T_37[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_40 ? T_40 extends T_36[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_40 ? T_40 extends T_35[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_40 ? T_40 extends T_33[K_4] ? T_40 extends CanBeExpanded ? T_40["default"] : T_40 : never : never; } : T_33 : never : never; } : T_26 : never : never : T_25 extends (infer U)[] ? any[] : T_25 extends object ? { [K_3 in keyof T_25]-?: T_25[K_3] extends infer T_33 ? T_33 extends T_25[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_39 ? T_39 extends T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_39 extends CanBeExpanded ? T_39[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_40 ? T_40 extends T_39[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_40 extends CanBeExpanded ? any : T_40 extends (infer U)[] ? any[] : T_40 extends object ? { [K_4 in keyof T_40]-?: T_40[K_4] extends infer T_41 ? T_41 extends T_40[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_40 : never : never : T_39 extends (infer U)[] ? any[] : T_39 extends object ? { [K_4 in keyof T_39]-?: T_39[K_4] extends infer T_41 ? T_41 extends T_39[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_39 : never : never : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_41 ? T_41 extends T_38[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_41 ? T_41 extends T_37[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_41 ? T_41 extends T_36[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_41 ? T_41 extends T_35[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_41 ? T_41 extends T_33[K_4] ? T_41 extends CanBeExpanded ? T_41["default"] : T_41 : never : never; } : T_33 : never : never; } : T_25 : never : never : T_23 extends (infer U)[] ? any[] : T_23 extends object ? { [K_3 in keyof T_23]-?: T_23[K_3] extends infer T_33 ? T_33 extends T_23[K_3] ? T_33 extends CanBeExpanded ? T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_35 ? T_35 extends T_33[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_35 extends CanBeExpanded ? T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_36 ? T_36 extends T_35[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_36 extends CanBeExpanded ? T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_37 ? T_37 extends T_36[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_37 extends CanBeExpanded ? T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_38 ? T_38 extends T_37[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_38 extends CanBeExpanded ? T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_39 ? T_39 extends T_38[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_39 extends CanBeExpanded ? T_39[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_40 ? T_40 extends T_39[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_40 extends CanBeExpanded ? T_40[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] extends infer T_41 ? T_41 extends T_40[PrefixWith, K_3, "."> extends infer T_34 ? T_34 extends PrefixWith, K_3, "."> ? T_34 extends SplitAC ? "value" : "default" : never : never] ? T_41 extends CanBeExpanded ? any : T_41 extends (infer U)[] ? any[] : T_41 extends object ? { [K_4 in keyof T_41]-?: T_41[K_4] extends infer T_42 ? T_42 extends T_41[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_41 : never : never : T_40 extends (infer U)[] ? any[] : T_40 extends object ? { [K_4 in keyof T_40]-?: T_40[K_4] extends infer T_42 ? T_42 extends T_40[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_40 : never : never : T_39 extends (infer U)[] ? any[] : T_39 extends object ? { [K_4 in keyof T_39]-?: T_39[K_4] extends infer T_42 ? T_42 extends T_39[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_39 : never : never : T_38 extends (infer U)[] ? any[] : T_38 extends object ? { [K_4 in keyof T_38]-?: T_38[K_4] extends infer T_42 ? T_42 extends T_38[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_38 : never : never : T_37 extends (infer U)[] ? any[] : T_37 extends object ? { [K_4 in keyof T_37]-?: T_37[K_4] extends infer T_42 ? T_42 extends T_37[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_37 : never : never : T_36 extends (infer U)[] ? any[] : T_36 extends object ? { [K_4 in keyof T_36]-?: T_36[K_4] extends infer T_42 ? T_42 extends T_36[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_36 : never : never : T_35 extends (infer U)[] ? any[] : T_35 extends object ? { [K_4 in keyof T_35]-?: T_35[K_4] extends infer T_42 ? T_42 extends T_35[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_35 : never : never : T_33 extends (infer U)[] ? any[] : T_33 extends object ? { [K_4 in keyof T_33]-?: T_33[K_4] extends infer T_42 ? T_42 extends T_33[K_4] ? T_42 extends CanBeExpanded ? T_42["default"] : T_42 : never : never; } : T_33 : never : never; } : T_23 : never : never; } : T_12 : never : never; } : T +>UseQueryOptions2 : T extends CanBeExpanded ? T["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_2 ? T_2 extends T["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_2 extends CanBeExpanded ? T_2["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_3 ? T_3 extends T_2["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_3 extends CanBeExpanded ? T_3["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_4 ? T_4 extends T_3["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_4 extends CanBeExpanded ? T_4["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_5 ? T_5 extends T_4["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_5 extends CanBeExpanded ? T_5["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_6 ? T_6 extends T_5["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_6 extends CanBeExpanded ? T_6["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_7 ? T_7 extends T_6["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_7 extends CanBeExpanded ? T_7["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_8 ? T_8 extends T_7["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_8 extends CanBeExpanded ? T_8["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_9 ? T_9 extends T_8["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_9 extends CanBeExpanded ? T_9["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_10 ? T_10 extends T_9["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_10 extends CanBeExpanded ? T_10["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] extends infer T_11 ? T_11 extends T_10["" extends infer T_1 ? T_1 extends "" ? T_1 extends SplitAC ? "value" : "default" : never : never] ? T_11 extends CanBeExpanded ? any : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any : never : never : any type UseQueryOptions3 = Expand_ extends infer O ? O : never >UseQueryOptions3 : UseQueryOptions3 diff --git a/tsc/testdata/baselines/reference/conformance/commonJSImportNestedClassTypeReference.errors.txt b/tsc/testdata/baselines/reference/conformance/commonJSImportNestedClassTypeReference.errors.txt index 109a57b0b746b..230158e37d47e 100644 --- a/tsc/testdata/baselines/reference/conformance/commonJSImportNestedClassTypeReference.errors.txt +++ b/tsc/testdata/baselines/reference/conformance/commonJSImportNestedClassTypeReference.errors.txt @@ -1,4 +1,5 @@ main.js(2,13): error TS2749: 'K' refers to a value, but is being used as a type here. Did you mean 'typeof K'? +mod1.js(7,1): error TS5088: The inferred type of 'K' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. ==== main.js (1 errors) ==== @@ -10,7 +11,7 @@ main.js(2,13): error TS2749: 'K' refers to a value, but is being used as a type k.values() } -==== mod1.js (0 errors) ==== +==== mod1.js (1 errors) ==== var NS = {} NS.K =class { values() { @@ -18,4 +19,6 @@ main.js(2,13): error TS2749: 'K' refers to a value, but is being used as a type } } exports.K = NS.K; + ~~~~~~~~~~~~~~~~ +!!! error TS5088: The inferred type of 'K' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. \ No newline at end of file diff --git a/tsc/testdata/baselines/reference/conformance/commonJSImportNestedClassTypeReference.js b/tsc/testdata/baselines/reference/conformance/commonJSImportNestedClassTypeReference.js index 99a0897eb679b..2e19813a3b123 100644 --- a/tsc/testdata/baselines/reference/conformance/commonJSImportNestedClassTypeReference.js +++ b/tsc/testdata/baselines/reference/conformance/commonJSImportNestedClassTypeReference.js @@ -35,11 +35,5 @@ function f(k) { } -//// [mod1.d.ts] -export declare var K: { - new (): { - values(): /*elided*/ any; - }; -}; //// [main.d.ts] export {}; diff --git a/tsc/testdata/baselines/reference/conformance/varianceAnnotations.errors.txt b/tsc/testdata/baselines/reference/conformance/varianceAnnotations.errors.txt index c58ce8ee943af..b47254c0503e3 100644 --- a/tsc/testdata/baselines/reference/conformance/varianceAnnotations.errors.txt +++ b/tsc/testdata/baselines/reference/conformance/varianceAnnotations.errors.txt @@ -64,9 +64,10 @@ varianceAnnotations.ts(160,68): error TS2345: Argument of type 'ActionObject<{ t Types of property '_storedEvent' are incompatible. Type '{ type: "PLAY"; value: number; } | { type: "RESET"; }' is not assignable to type '{ type: "PLAY"; value: number; }'. Property 'value' is missing in type '{ type: "RESET"; }' but required in type '{ type: "PLAY"; value: number; }'. +varianceAnnotations.ts(170,5): error TS5088: The inferred type of 'OuterC' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. -==== varianceAnnotations.ts (31 errors) ==== +==== varianceAnnotations.ts (32 errors) ==== type Covariant = { x: T; } @@ -335,6 +336,8 @@ varianceAnnotations.ts(160,68): error TS2345: Argument of type 'ActionObject<{ t } let OuterC = class C { + ~~~~~~ +!!! error TS5088: The inferred type of 'OuterC' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary. foo(): C { return this; } diff --git a/tsc/testdata/baselines/reference/conformance/varianceAnnotations.js b/tsc/testdata/baselines/reference/conformance/varianceAnnotations.js index 95ee45dff82d5..050275ef773ca 100644 --- a/tsc/testdata/baselines/reference/conformance/varianceAnnotations.js +++ b/tsc/testdata/baselines/reference/conformance/varianceAnnotations.js @@ -212,120 +212,3 @@ let OuterC = class C { return this; } }; - - -//// [varianceAnnotations.d.ts] -type Covariant = { - x: T; -}; -declare let super_covariant: Covariant; -declare let sub_covariant: Covariant; -type Contravariant = { - f: (x: T) => void; -}; -declare let super_contravariant: Contravariant; -declare let sub_contravariant: Contravariant; -type Invariant = { - f: (x: T) => T; -}; -declare let super_invariant: Invariant; -declare let sub_invariant: Invariant; -type T10 = T; -type T11 = keyof T; -type T12 = T[K]; -type T13 = T[keyof T]; -type Covariant1 = { - x: T; -}; -type Contravariant1 = keyof T; -type Contravariant2 = { - f: (x: T) => void; -}; -type Invariant1 = { - f: (x: T) => T; -}; -type Invariant2 = { - f: (x: T) => T; -}; -type Foo1 = { - x: T; - f: FooFn1; -}; -type FooFn1 = (foo: Bar1) => void; -type Bar1 = { - value: Foo1; -}; -type Foo2 = { - x: T; - f: FooFn2; -}; -type FooFn2 = (foo: Bar2) => void; -type Bar2 = { - value: Foo2; -}; -type Foo3 = { - x: T; - f: FooFn3; -}; -type FooFn3 = (foo: Bar3) => void; -type Bar3 = { - value: Foo3; -}; -type T20 = T; -type T21 = T; -type T22 = T; -type T23 = T; -declare function f1(x: T): void; -declare function f2(): T; -declare class C { - in a: number; - out b: number; -} -interface Baz { -} -interface Baz { -} -declare let baz1: Baz; -declare let baz2: Baz; -interface Parent { - child: Child | null; - parent: Parent | null; -} -interface Child extends Parent { - readonly a: A; - readonly b: B; -} -declare function fn(inp: Child): void; -declare const pu: Parent; -declare const notString: Parent; -declare class StateNode { - _storedEvent: TEvent; - _action: ActionObject; - _state: StateNode; -} -interface ActionObject { - exec: (meta: StateNode) => void; -} -declare function createMachine(action: ActionObject): StateNode; -declare function interpret(machine: StateNode): void; -declare const machine: StateNode; -declare const qq: ActionObject<{ - type: "PLAY"; - value: number; -}>; -declare let Anon: { - new (): { - foo(): InstanceType<(typeof Anon)>; - }; -}; -declare let OuterC: { - new (): { - foo(): /*elided*/ any; - }; -}; diff --git a/tsc/testdata/tests/cases/compiler/declarationEmitUnserializableTypes.ts b/tsc/testdata/tests/cases/compiler/declarationEmitUnserializableTypes.ts new file mode 100644 index 0000000000000..5c68c978d9dcc --- /dev/null +++ b/tsc/testdata/tests/cases/compiler/declarationEmitUnserializableTypes.ts @@ -0,0 +1,39 @@ +// @strict: true +// @declaration: true + +// @filename: local.ts +export function localArrow() { + const inner = () => inner; + return inner; +} +export function localDeclaration() { + function inner() { return inner; } + return inner; +} +export function localInstantiation() { + function inner(): typeof inner { return inner; } + return inner; +} +export const object = { + self() { return object; } +}; +export const annotatedObject: { self(): typeof annotatedObject } = { + self() { return annotatedObject; } +}; + +// @filename: growing.ts +export function grow(value: T) { + return { + value, + deeper: (next: U) => grow({ ...value, ...next }), + }; +} + +// @filename: annotatedLocal.ts +interface Recursive { + (): Recursive; +} +export function local(): Recursive { + const inner = () => inner; + return inner; +} diff --git a/tsc/testdata/tests/cases/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts b/tsc/testdata/tests/cases/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts index 205e720edd3e4..ad675059048f3 100644 --- a/tsc/testdata/tests/cases/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts +++ b/tsc/testdata/tests/cases/compiler/declarationsWithRecursiveInternalTypesProduceUniqueTypeParams.ts @@ -1,10 +1,10 @@ // @module: commonjs -// @target: es2015 +// @target: es2015 // @declaration: true // @lib: es6 -// Note that both of the following have an `any` in their return type from where we bottom out the type printout -// for having too many instances of the same symbol nesting. +// Both return types exceed the serializer's nesting limit. Declaration emit must report an error +// rather than silently replacing the remaining type with `any`. // Slightly simplified repro from https://github.com/microsoft/TypeScript/issues/30732 so it's easier to read and debug export type Key = keyof U;