Source/sources/gnu/xquery/util/CompileMisc.java
public static gnu.expr.Expression validateApplyValuesFilter(gnu.expr.ApplyExp r32, gnu.expr.InlineCalls r33, gnu.bytecode.Type r34, gnu.mapping.Procedure r35) {
        /*
            r26 = r35
            gnu.xquery.util.ValuesFilter r26 = (gnu.xquery.util.ValuesFilter) r26
            r32.visitArgs(r33)
            gnu.expr.Expression[] r4 = r32.getArgs()
            r27 = 1
            r7 = r4[r27]
            boolean r0 = r7 instanceof gnu.expr.LambdaExp
            r27 = r0
            if (r27 == 0) goto L_0x0030
            r14 = r7
            gnu.expr.LambdaExp r14 = (gnu.expr.LambdaExp) r14
            int r0 = r14.min_args
            r27 = r0
            r28 = 3
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0030
            int r0 = r14.max_args
            r27 = r0
            r28 = 3
            r0 = r27
            r1 = r28
            if (r0 == r1) goto L_0x0031
        L_0x0030:
            return r32
        L_0x0031:
            r27 = 0
            r27 = r4[r27]
            gnu.bytecode.Type r27 = r27.getType()
            r0 = r32
            r1 = r27
            r0.setType(r1)
            gnu.expr.Compilation r15 = r33.getCompilation()
            gnu.expr.Declaration r6 = r14.firstDecl()
            gnu.expr.Declaration r16 = r6.nextDecl()
            gnu.expr.Declaration r10 = r16.nextDecl()
            r27 = 1
            r0 = r27
            r14.setInlineOnly(r0)
            r0 = r32
            r14.returnContinuation = r0
            gnu.expr.LambdaExp r27 = r33.getCurrentLambda()
            r0 = r27
            r14.inlineHome = r0
            r0 = r16
            r14.remove(r0, r10)
            r27 = 2
            r0 = r27
            r14.min_args = r0
            r27 = 2
            r0 = r27
            r14.max_args = r0
            boolean r27 = r10.getCanRead()
            if (r27 != 0) goto L_0x0088
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 82
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0030
        L_0x0088:
            r15.letStart()
            r27 = 0
            r21 = r4[r27]
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 80
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0218
            gnu.bytecode.Type r23 = r21.getType()
            gnu.bytecode.ClassType r27 = gnu.expr.Compilation.typeValues
            java.lang.String r28 = "countValues"
            r29 = 1
            gnu.bytecode.Method r25 = r27.getDeclaredMethod(r28, r29)
        L_0x00ab:
            java.lang.String r27 = "sequence"
            r0 = r27
            r1 = r23
            r2 = r21
            gnu.expr.Declaration r24 = r15.letVariable(r0, r1, r2)
            r15.letEnter()
            gnu.expr.Expression r0 = r14.body
            r18 = r0
            gnu.expr.Expression r0 = r14.body
            r27 = r0
            gnu.bytecode.Type r20 = r27.getType()
            gnu.kawa.xml.XDataType r27 = gnu.kawa.xml.XDataType.booleanType
            r0 = r20
            r1 = r27
            if (r0 == r1) goto L_0x00f6
            gnu.expr.ApplyExp r19 = new gnu.expr.ApplyExp
            gnu.bytecode.Method r27 = gnu.xquery.util.ValuesFilter.matchesMethod
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r18
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r16
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r19
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            r18 = r19
        L_0x00f6:
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 82
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0185
            gnu.expr.Declaration r17 = new gnu.expr.Declaration
            r27 = 0
            gnu.bytecode.PrimType r28 = gnu.bytecode.Type.intType
            r0 = r17
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            gnu.expr.ApplyExp r8 = new gnu.expr.ApplyExp
            gnu.kawa.functions.AddOp r27 = gnu.kawa.functions.AddOp.$Mn
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r0.<init>(r10)
            r28[r29] = r30
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r17
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r8.<init>(r0, r1)
            gnu.expr.ApplyExp r9 = new gnu.expr.ApplyExp
            gnu.kawa.functions.AddOp r27 = gnu.kawa.functions.AddOp.$Pl
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r8
            r29 = 1
            gnu.expr.QuoteExp r30 = new gnu.expr.QuoteExp
            gnu.math.IntNum r31 = gnu.math.IntNum.one()
            r30.<init>(r31)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r9.<init>(r0, r1)
            gnu.expr.LetExp r12 = new gnu.expr.LetExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            r27[r28] = r9
            r0 = r27
            r12.<init>(r0)
            r0 = r17
            r14.replaceFollowing(r6, r0)
            r0 = r16
            r12.add(r0)
            r0 = r18
            r12.body = r0
            r18 = r12
        L_0x0185:
            gnu.expr.IfExp r19 = new gnu.expr.IfExp
            gnu.expr.ReferenceExp r27 = new gnu.expr.ReferenceExp
            r0 = r27
            r0.<init>(r6)
            gnu.expr.QuoteExp r28 = gnu.expr.QuoteExp.voidExp
            r0 = r19
            r1 = r18
            r2 = r27
            r3 = r28
            r0.<init>(r1, r2, r3)
            r0 = r19
            r14.body = r0
            gnu.expr.ApplyExp r5 = new gnu.expr.ApplyExp
            gnu.kawa.functions.ValuesMap r27 = gnu.kawa.functions.ValuesMap.valuesMapWithPos
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r14
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r24
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r5.<init>(r0, r1)
            gnu.bytecode.Type r27 = r6.getType()
            r0 = r27
            r5.setType(r0)
            r14.returnContinuation = r5
            gnu.expr.ApplyExp r11 = new gnu.expr.ApplyExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            gnu.expr.ReferenceExp r29 = new gnu.expr.ReferenceExp
            r0 = r29
            r1 = r24
            r0.<init>(r1)
            r27[r28] = r29
            r0 = r25
            r1 = r27
            r11.<init>(r0, r1)
            gnu.expr.LetExp r13 = new gnu.expr.LetExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            r27[r28] = r11
            r0 = r27
            r13.<init>(r0)
            r13.add(r10)
            gnu.kawa.functions.ValuesMap r27 = gnu.kawa.functions.ValuesMap.valuesMapWithPos
            r0 = r33
            r1 = r34
            r2 = r27
            gnu.expr.Expression r27 = gnu.kawa.functions.CompileMisc.validateApplyValuesMap(r5, r0, r1, r2)
            r0 = r27
            r13.body = r0
            gnu.expr.LetExp r32 = r15.letDone(r13)
            goto L_0x0030
        L_0x0218:
            gnu.bytecode.ClassType r23 = gnu.kawa.xml.SortNodes.typeSortedNodes
            gnu.expr.ApplyExp r22 = new gnu.expr.ApplyExp
            gnu.kawa.xml.SortNodes r27 = gnu.kawa.xml.SortNodes.sortNodes
            r28 = 1
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r21
            r0 = r22
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            gnu.bytecode.ClassType r27 = gnu.kawa.xml.CoerceNodes.typeNodes
            java.lang.String r28 = "size"
            r29 = 0
            gnu.bytecode.Method r25 = r27.getDeclaredMethod(r28, r29)
            r21 = r22
            goto L_0x00ab
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.xquery.util.CompileMisc.validateApplyValuesFilter(gnu.expr.ApplyExp, gnu.expr.InlineCalls, gnu.bytecode.Type, gnu.mapping.Procedure):gnu.expr.Expression");
    }
/* Code decompiled incorrectly, please refer to instructions dump. */
Code decompiled incorrectly, please refer to instructions dump.
Code decompiled incorrectly please refer to instructions dump .
public static gnu.expr.Expression validateApplyValuesFilter(gnu.expr.ApplyExp r32, gnu.expr.InlineCalls r33, gnu.bytecode.Type r34, gnu.mapping.Procedure r35) {
        /*
            r26 = r35
            gnu.xquery.util.ValuesFilter r26 = (gnu.xquery.util.ValuesFilter) r26
            r32.visitArgs(r33)
            gnu.expr.Expression[] r4 = r32.getArgs()
            r27 = 1
            r7 = r4[r27]
            boolean r0 = r7 instanceof gnu.expr.LambdaExp
            r27 = r0
            if (r27 == 0) goto L_0x0030
            r14 = r7
            gnu.expr.LambdaExp r14 = (gnu.expr.LambdaExp) r14
            int r0 = r14.min_args
            r27 = r0
            r28 = 3
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0030
            int r0 = r14.max_args
            r27 = r0
            r28 = 3
            r0 = r27
            r1 = r28
            if (r0 == r1) goto L_0x0031
        L_0x0030:
            return r32
        L_0x0031:
            r27 = 0
            r27 = r4[r27]
            gnu.bytecode.Type r27 = r27.getType()
            r0 = r32
            r1 = r27
            r0.setType(r1)
            gnu.expr.Compilation r15 = r33.getCompilation()
            gnu.expr.Declaration r6 = r14.firstDecl()
            gnu.expr.Declaration r16 = r6.nextDecl()
            gnu.expr.Declaration r10 = r16.nextDecl()
            r27 = 1
            r0 = r27
            r14.setInlineOnly(r0)
            r0 = r32
            r14.returnContinuation = r0
            gnu.expr.LambdaExp r27 = r33.getCurrentLambda()
            r0 = r27
            r14.inlineHome = r0
            r0 = r16
            r14.remove(r0, r10)
            r27 = 2
            r0 = r27
            r14.min_args = r0
            r27 = 2
            r0 = r27
            r14.max_args = r0
            boolean r27 = r10.getCanRead()
            if (r27 != 0) goto L_0x0088
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 82
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0030
        L_0x0088:
            r15.letStart()
            r27 = 0
            r21 = r4[r27]
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 80
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0218
            gnu.bytecode.Type r23 = r21.getType()
            gnu.bytecode.ClassType r27 = gnu.expr.Compilation.typeValues
            java.lang.String r28 = "countValues"
            r29 = 1
            gnu.bytecode.Method r25 = r27.getDeclaredMethod(r28, r29)
        L_0x00ab:
            java.lang.String r27 = "sequence"
            r0 = r27
            r1 = r23
            r2 = r21
            gnu.expr.Declaration r24 = r15.letVariable(r0, r1, r2)
            r15.letEnter()
            gnu.expr.Expression r0 = r14.body
            r18 = r0
            gnu.expr.Expression r0 = r14.body
            r27 = r0
            gnu.bytecode.Type r20 = r27.getType()
            gnu.kawa.xml.XDataType r27 = gnu.kawa.xml.XDataType.booleanType
            r0 = r20
            r1 = r27
            if (r0 == r1) goto L_0x00f6
            gnu.expr.ApplyExp r19 = new gnu.expr.ApplyExp
            gnu.bytecode.Method r27 = gnu.xquery.util.ValuesFilter.matchesMethod
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r18
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r16
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r19
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            r18 = r19
        L_0x00f6:
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 82
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0185
            gnu.expr.Declaration r17 = new gnu.expr.Declaration
            r27 = 0
            gnu.bytecode.PrimType r28 = gnu.bytecode.Type.intType
            r0 = r17
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            gnu.expr.ApplyExp r8 = new gnu.expr.ApplyExp
            gnu.kawa.functions.AddOp r27 = gnu.kawa.functions.AddOp.$Mn
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r0.<init>(r10)
            r28[r29] = r30
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r17
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r8.<init>(r0, r1)
            gnu.expr.ApplyExp r9 = new gnu.expr.ApplyExp
            gnu.kawa.functions.AddOp r27 = gnu.kawa.functions.AddOp.$Pl
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r8
            r29 = 1
            gnu.expr.QuoteExp r30 = new gnu.expr.QuoteExp
            gnu.math.IntNum r31 = gnu.math.IntNum.one()
            r30.<init>(r31)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r9.<init>(r0, r1)
            gnu.expr.LetExp r12 = new gnu.expr.LetExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            r27[r28] = r9
            r0 = r27
            r12.<init>(r0)
            r0 = r17
            r14.replaceFollowing(r6, r0)
            r0 = r16
            r12.add(r0)
            r0 = r18
            r12.body = r0
            r18 = r12
        L_0x0185:
            gnu.expr.IfExp r19 = new gnu.expr.IfExp
            gnu.expr.ReferenceExp r27 = new gnu.expr.ReferenceExp
            r0 = r27
            r0.<init>(r6)
            gnu.expr.QuoteExp r28 = gnu.expr.QuoteExp.voidExp
            r0 = r19
            r1 = r18
            r2 = r27
            r3 = r28
            r0.<init>(r1, r2, r3)
            r0 = r19
            r14.body = r0
            gnu.expr.ApplyExp r5 = new gnu.expr.ApplyExp
            gnu.kawa.functions.ValuesMap r27 = gnu.kawa.functions.ValuesMap.valuesMapWithPos
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r14
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r24
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r5.<init>(r0, r1)
            gnu.bytecode.Type r27 = r6.getType()
            r0 = r27
            r5.setType(r0)
            r14.returnContinuation = r5
            gnu.expr.ApplyExp r11 = new gnu.expr.ApplyExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            gnu.expr.ReferenceExp r29 = new gnu.expr.ReferenceExp
            r0 = r29
            r1 = r24
            r0.<init>(r1)
            r27[r28] = r29
            r0 = r25
            r1 = r27
            r11.<init>(r0, r1)
            gnu.expr.LetExp r13 = new gnu.expr.LetExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            r27[r28] = r11
            r0 = r27
            r13.<init>(r0)
            r13.add(r10)
            gnu.kawa.functions.ValuesMap r27 = gnu.kawa.functions.ValuesMap.valuesMapWithPos
            r0 = r33
            r1 = r34
            r2 = r27
            gnu.expr.Expression r27 = gnu.kawa.functions.CompileMisc.validateApplyValuesMap(r5, r0, r1, r2)
            r0 = r27
            r13.body = r0
            gnu.expr.LetExp r32 = r15.letDone(r13)
            goto L_0x0030
        L_0x0218:
            gnu.bytecode.ClassType r23 = gnu.kawa.xml.SortNodes.typeSortedNodes
            gnu.expr.ApplyExp r22 = new gnu.expr.ApplyExp
            gnu.kawa.xml.SortNodes r27 = gnu.kawa.xml.SortNodes.sortNodes
            r28 = 1
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r21
            r0 = r22
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            gnu.bytecode.ClassType r27 = gnu.kawa.xml.CoerceNodes.typeNodes
            java.lang.String r28 = "size"
            r29 = 0
            gnu.bytecode.Method r25 = r27.getDeclaredMethod(r28, r29)
            r21 = r22
            goto L_0x00ab
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.xquery.util.CompileMisc.validateApplyValuesFilter(gnu.expr.ApplyExp, gnu.expr.InlineCalls, gnu.bytecode.Type, gnu.mapping.Procedure):gnu.expr.Expression");
    }
public static gnu . expr . Expression validateApplyValuesFilter ( gnu . expr . ApplyExp r32 , gnu . expr . InlineCalls r33 , gnu . bytecode . Type r34 , gnu . mapping . Procedure r35 ) { /*
            r26 = r35
            gnu.xquery.util.ValuesFilter r26 = (gnu.xquery.util.ValuesFilter) r26
            r32.visitArgs(r33)
            gnu.expr.Expression[] r4 = r32.getArgs()
            r27 = 1
            r7 = r4[r27]
            boolean r0 = r7 instanceof gnu.expr.LambdaExp
            r27 = r0
            if (r27 == 0) goto L_0x0030
            r14 = r7
            gnu.expr.LambdaExp r14 = (gnu.expr.LambdaExp) r14
            int r0 = r14.min_args
            r27 = r0
            r28 = 3
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0030
            int r0 = r14.max_args
            r27 = r0
            r28 = 3
            r0 = r27
            r1 = r28
            if (r0 == r1) goto L_0x0031
        L_0x0030:
            return r32
        L_0x0031:
            r27 = 0
            r27 = r4[r27]
            gnu.bytecode.Type r27 = r27.getType()
            r0 = r32
            r1 = r27
            r0.setType(r1)
            gnu.expr.Compilation r15 = r33.getCompilation()
            gnu.expr.Declaration r6 = r14.firstDecl()
            gnu.expr.Declaration r16 = r6.nextDecl()
            gnu.expr.Declaration r10 = r16.nextDecl()
            r27 = 1
            r0 = r27
            r14.setInlineOnly(r0)
            r0 = r32
            r14.returnContinuation = r0
            gnu.expr.LambdaExp r27 = r33.getCurrentLambda()
            r0 = r27
            r14.inlineHome = r0
            r0 = r16
            r14.remove(r0, r10)
            r27 = 2
            r0 = r27
            r14.min_args = r0
            r27 = 2
            r0 = r27
            r14.max_args = r0
            boolean r27 = r10.getCanRead()
            if (r27 != 0) goto L_0x0088
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 82
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0030
        L_0x0088:
            r15.letStart()
            r27 = 0
            r21 = r4[r27]
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 80
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0218
            gnu.bytecode.Type r23 = r21.getType()
            gnu.bytecode.ClassType r27 = gnu.expr.Compilation.typeValues
            java.lang.String r28 = "countValues"
            r29 = 1
            gnu.bytecode.Method r25 = r27.getDeclaredMethod(r28, r29)
        L_0x00ab:
            java.lang.String r27 = "sequence"
            r0 = r27
            r1 = r23
            r2 = r21
            gnu.expr.Declaration r24 = r15.letVariable(r0, r1, r2)
            r15.letEnter()
            gnu.expr.Expression r0 = r14.body
            r18 = r0
            gnu.expr.Expression r0 = r14.body
            r27 = r0
            gnu.bytecode.Type r20 = r27.getType()
            gnu.kawa.xml.XDataType r27 = gnu.kawa.xml.XDataType.booleanType
            r0 = r20
            r1 = r27
            if (r0 == r1) goto L_0x00f6
            gnu.expr.ApplyExp r19 = new gnu.expr.ApplyExp
            gnu.bytecode.Method r27 = gnu.xquery.util.ValuesFilter.matchesMethod
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r18
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r16
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r19
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            r18 = r19
        L_0x00f6:
            r0 = r26
            char r0 = r0.kind
            r27 = r0
            r28 = 82
            r0 = r27
            r1 = r28
            if (r0 != r1) goto L_0x0185
            gnu.expr.Declaration r17 = new gnu.expr.Declaration
            r27 = 0
            gnu.bytecode.PrimType r28 = gnu.bytecode.Type.intType
            r0 = r17
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            gnu.expr.ApplyExp r8 = new gnu.expr.ApplyExp
            gnu.kawa.functions.AddOp r27 = gnu.kawa.functions.AddOp.$Mn
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r0.<init>(r10)
            r28[r29] = r30
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r17
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r8.<init>(r0, r1)
            gnu.expr.ApplyExp r9 = new gnu.expr.ApplyExp
            gnu.kawa.functions.AddOp r27 = gnu.kawa.functions.AddOp.$Pl
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r8
            r29 = 1
            gnu.expr.QuoteExp r30 = new gnu.expr.QuoteExp
            gnu.math.IntNum r31 = gnu.math.IntNum.one()
            r30.<init>(r31)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r9.<init>(r0, r1)
            gnu.expr.LetExp r12 = new gnu.expr.LetExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            r27[r28] = r9
            r0 = r27
            r12.<init>(r0)
            r0 = r17
            r14.replaceFollowing(r6, r0)
            r0 = r16
            r12.add(r0)
            r0 = r18
            r12.body = r0
            r18 = r12
        L_0x0185:
            gnu.expr.IfExp r19 = new gnu.expr.IfExp
            gnu.expr.ReferenceExp r27 = new gnu.expr.ReferenceExp
            r0 = r27
            r0.<init>(r6)
            gnu.expr.QuoteExp r28 = gnu.expr.QuoteExp.voidExp
            r0 = r19
            r1 = r18
            r2 = r27
            r3 = r28
            r0.<init>(r1, r2, r3)
            r0 = r19
            r14.body = r0
            gnu.expr.ApplyExp r5 = new gnu.expr.ApplyExp
            gnu.kawa.functions.ValuesMap r27 = gnu.kawa.functions.ValuesMap.valuesMapWithPos
            r28 = 2
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r14
            r29 = 1
            gnu.expr.ReferenceExp r30 = new gnu.expr.ReferenceExp
            r0 = r30
            r1 = r24
            r0.<init>(r1)
            r28[r29] = r30
            r0 = r27
            r1 = r28
            r5.<init>(r0, r1)
            gnu.bytecode.Type r27 = r6.getType()
            r0 = r27
            r5.setType(r0)
            r14.returnContinuation = r5
            gnu.expr.ApplyExp r11 = new gnu.expr.ApplyExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            gnu.expr.ReferenceExp r29 = new gnu.expr.ReferenceExp
            r0 = r29
            r1 = r24
            r0.<init>(r1)
            r27[r28] = r29
            r0 = r25
            r1 = r27
            r11.<init>(r0, r1)
            gnu.expr.LetExp r13 = new gnu.expr.LetExp
            r27 = 1
            r0 = r27
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r27 = r0
            r28 = 0
            r27[r28] = r11
            r0 = r27
            r13.<init>(r0)
            r13.add(r10)
            gnu.kawa.functions.ValuesMap r27 = gnu.kawa.functions.ValuesMap.valuesMapWithPos
            r0 = r33
            r1 = r34
            r2 = r27
            gnu.expr.Expression r27 = gnu.kawa.functions.CompileMisc.validateApplyValuesMap(r5, r0, r1, r2)
            r0 = r27
            r13.body = r0
            gnu.expr.LetExp r32 = r15.letDone(r13)
            goto L_0x0030
        L_0x0218:
            gnu.bytecode.ClassType r23 = gnu.kawa.xml.SortNodes.typeSortedNodes
            gnu.expr.ApplyExp r22 = new gnu.expr.ApplyExp
            gnu.kawa.xml.SortNodes r27 = gnu.kawa.xml.SortNodes.sortNodes
            r28 = 1
            r0 = r28
            gnu.expr.Expression[] r0 = new gnu.expr.Expression[r0]
            r28 = r0
            r29 = 0
            r28[r29] = r21
            r0 = r22
            r1 = r27
            r2 = r28
            r0.<init>(r1, r2)
            gnu.bytecode.ClassType r27 = gnu.kawa.xml.CoerceNodes.typeNodes
            java.lang.String r28 = "size"
            r29 = 0
            gnu.bytecode.Method r25 = r27.getDeclaredMethod(r28, r29)
            r21 = r22
            goto L_0x00ab
        */ throw new UnsupportedOperationException ( "Method not decompiled: gnu.xquery.util.CompileMisc.validateApplyValuesFilter(gnu.expr.ApplyExp, gnu.expr.InlineCalls, gnu.bytecode.Type, gnu.mapping.Procedure):gnu.expr.Expression" ) ; }
Code decompiled incorrectly, please refer to instructions dump.
Code decompiled incorrectly please refer to instructions dump .