Source/sources/gnu/lists/TreeList.java
public int nextMatching(int r15, gnu.lists.ItemPredicate r16, int r17, boolean r18) {
        /*
            r14 = this;
            int r10 = r14.posToDataIndex(r15)
            r0 = r17
            int r7 = r14.posToDataIndex(r0)
            r9 = r10
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.NodePredicate
            if (r11 == 0) goto L_0x0015
            int r9 = r14.nextNodeIndex(r9, r7)
        L_0x0015:
            r1 = 0
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.ElementPredicate
            if (r11 == 0) goto L_0x002c
            r3 = 1
            r2 = 1
            r4 = 0
        L_0x001f:
            int r11 = r14.gapStart
            if (r9 != r11) goto L_0x0025
            int r9 = r14.gapEnd
        L_0x0025:
            if (r9 < r7) goto L_0x003a
            r11 = -1
            if (r7 == r11) goto L_0x003a
            r11 = 0
        L_0x002b:
            return r11
        L_0x002c:
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.AttributePredicate
            if (r11 == 0) goto L_0x0036
            r3 = 1
            r2 = 0
            r4 = 0
            goto L_0x001f
        L_0x0036:
            r3 = 1
            r2 = 1
            r4 = 1
            goto L_0x001f
        L_0x003a:
            char[] r11 = r14.data
            char r5 = r11[r9]
            r11 = 40959(0x9fff, float:5.7396E-41)
            if (r5 <= r11) goto L_0x0057
            r11 = 57344(0xe000, float:8.0356E-41)
            if (r5 < r11) goto L_0x004d
            r11 = 61439(0xefff, float:8.6094E-41)
            if (r5 <= r11) goto L_0x0057
        L_0x004d:
            r11 = 45056(0xb000, float:6.3137E-41)
            if (r5 < r11) goto L_0x0074
            r11 = 57343(0xdfff, float:8.0355E-41)
            if (r5 > r11) goto L_0x0074
        L_0x0057:
            if (r4 == 0) goto L_0x0070
            int r11 = r9 << 1
            r0 = r16
            boolean r11 = r0.isInstancePos(r14, r11)
            if (r11 == 0) goto L_0x0070
            int r11 = r14.gapEnd
            if (r9 < r11) goto L_0x006d
            int r11 = r14.gapEnd
            int r12 = r14.gapStart
            int r11 = r11 - r12
            int r9 = r9 - r11
        L_0x006d:
            int r11 = r9 << 1
            goto L_0x002b
        L_0x0070:
            int r8 = r9 + 1
        L_0x0072:
            r9 = r8
            goto L_0x001f
        L_0x0074:
            switch(r5) {
                case 61696: goto L_0x00e9;
                case 61697: goto L_0x00e9;
                case 61698: goto L_0x00ab;
                case 61699: goto L_0x00f1;
                case 61700: goto L_0x00ab;
                case 61701: goto L_0x00f1;
                case 61702: goto L_0x00b0;
                case 61703: goto L_0x0077;
                case 61704: goto L_0x011f;
                case 61705: goto L_0x00d0;
                case 61706: goto L_0x00c8;
                case 61707: goto L_0x00b3;
                case 61708: goto L_0x00c0;
                case 61709: goto L_0x00ab;
                case 61710: goto L_0x00ab;
                case 61711: goto L_0x00bb;
                case 61712: goto L_0x00a3;
                case 61713: goto L_0x00c8;
                case 61714: goto L_0x00a8;
                case 61715: goto L_0x00cd;
                case 61716: goto L_0x00f6;
                case 61717: goto L_0x0111;
                case 61718: goto L_0x00ee;
                case 61719: goto L_0x0103;
                case 61720: goto L_0x00a0;
                default: goto L_0x0077;
            }
        L_0x0077:
            r11 = 40960(0xa000, float:5.7397E-41)
            if (r5 < r11) goto L_0x0143
            r11 = 45055(0xafff, float:6.3136E-41)
            if (r5 > r11) goto L_0x0143
            if (r18 == 0) goto L_0x0138
            int r8 = r9 + 3
        L_0x0085:
            if (r2 == 0) goto L_0x0072
        L_0x0087:
            if (r9 <= r10) goto L_0x0072
            int r11 = r9 << 1
            r0 = r16
            boolean r11 = r0.isInstancePos(r14, r11)
            if (r11 == 0) goto L_0x0072
            int r11 = r14.gapEnd
            if (r9 < r11) goto L_0x009d
            int r11 = r14.gapEnd
            int r12 = r14.gapStart
            int r11 = r11 - r12
            int r9 = r9 - r11
        L_0x009d:
            int r11 = r9 << 1
            goto L_0x002b
        L_0x00a0:
            int r8 = r9 + 3
            goto L_0x0072
        L_0x00a3:
            int r8 = r9 + 5
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00a8:
            int r8 = r9 + 5
            goto L_0x0072
        L_0x00ab:
            int r8 = r9 + 3
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00b0:
            int r8 = r9 + 2
            goto L_0x0072
        L_0x00b3:
            if (r18 != 0) goto L_0x00b8
            r11 = 0
            goto L_0x002b
        L_0x00b8:
            int r8 = r9 + 2
            goto L_0x0072
        L_0x00bb:
            int r8 = r9 + 5
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00c0:
            if (r18 != 0) goto L_0x00c5
            r11 = 0
            goto L_0x002b
        L_0x00c5:
            int r8 = r9 + 7
            goto L_0x0072
        L_0x00c8:
            if (r18 != 0) goto L_0x00cd
            r11 = 0
            goto L_0x002b
        L_0x00cd:
            int r8 = r9 + 1
            goto L_0x0072
        L_0x00d0:
            if (r3 == 0) goto L_0x00e6
            int r11 = r9 + 3
            int r6 = r14.getIntN(r11)
            int r12 = r6 + 1
            if (r6 >= 0) goto L_0x00e4
            char[] r11 = r14.data
            int r11 = r11.length
        L_0x00df:
            int r8 = r12 + r11
        L_0x00e1:
            if (r1 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00e4:
            r11 = r9
            goto L_0x00df
        L_0x00e6:
            int r8 = r9 + 5
            goto L_0x00e1
        L_0x00e9:
            int r8 = r9 + 1
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00ee:
            int r8 = r9 + 1
            goto L_0x0072
        L_0x00f1:
            int r8 = r9 + 5
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00f6:
            int r11 = r9 + 5
            int r12 = r9 + 3
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0103:
            int r11 = r9 + 3
            int r12 = r9 + 1
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0111:
            int r11 = r9 + 3
            int r12 = r9 + 1
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x011f:
            if (r18 == 0) goto L_0x0127
            int r8 = r9 + 3
        L_0x0123:
            if (r2 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0127:
            int r11 = r9 + 1
            int r6 = r14.getIntN(r11)
            if (r6 >= 0) goto L_0x0136
            char[] r11 = r14.data
            int r11 = r11.length
        L_0x0132:
            int r11 = r11 + r6
            int r8 = r11 + 7
            goto L_0x0123
        L_0x0136:
            r11 = r9
            goto L_0x0132
        L_0x0138:
            char[] r11 = r14.data
            int r12 = r9 + 1
            char r11 = r11[r12]
            int r11 = r11 + r9
            int r8 = r11 + 2
            goto L_0x0085
        L_0x0143:
            java.lang.Error r11 = new java.lang.Error
            java.lang.StringBuilder r12 = new java.lang.StringBuilder
            r12.<init>()
            java.lang.String r13 = "unknown code:"
            java.lang.StringBuilder r12 = r12.append(r13)
            java.lang.StringBuilder r12 = r12.append(r5)
            java.lang.String r12 = r12.toString()
            r11.<init>(r12)
            throw r11
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.lists.TreeList.nextMatching(int, gnu.lists.ItemPredicate, int, boolean):int");
    }
/* 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 int nextMatching(int r15, gnu.lists.ItemPredicate r16, int r17, boolean r18) {
        /*
            r14 = this;
            int r10 = r14.posToDataIndex(r15)
            r0 = r17
            int r7 = r14.posToDataIndex(r0)
            r9 = r10
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.NodePredicate
            if (r11 == 0) goto L_0x0015
            int r9 = r14.nextNodeIndex(r9, r7)
        L_0x0015:
            r1 = 0
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.ElementPredicate
            if (r11 == 0) goto L_0x002c
            r3 = 1
            r2 = 1
            r4 = 0
        L_0x001f:
            int r11 = r14.gapStart
            if (r9 != r11) goto L_0x0025
            int r9 = r14.gapEnd
        L_0x0025:
            if (r9 < r7) goto L_0x003a
            r11 = -1
            if (r7 == r11) goto L_0x003a
            r11 = 0
        L_0x002b:
            return r11
        L_0x002c:
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.AttributePredicate
            if (r11 == 0) goto L_0x0036
            r3 = 1
            r2 = 0
            r4 = 0
            goto L_0x001f
        L_0x0036:
            r3 = 1
            r2 = 1
            r4 = 1
            goto L_0x001f
        L_0x003a:
            char[] r11 = r14.data
            char r5 = r11[r9]
            r11 = 40959(0x9fff, float:5.7396E-41)
            if (r5 <= r11) goto L_0x0057
            r11 = 57344(0xe000, float:8.0356E-41)
            if (r5 < r11) goto L_0x004d
            r11 = 61439(0xefff, float:8.6094E-41)
            if (r5 <= r11) goto L_0x0057
        L_0x004d:
            r11 = 45056(0xb000, float:6.3137E-41)
            if (r5 < r11) goto L_0x0074
            r11 = 57343(0xdfff, float:8.0355E-41)
            if (r5 > r11) goto L_0x0074
        L_0x0057:
            if (r4 == 0) goto L_0x0070
            int r11 = r9 << 1
            r0 = r16
            boolean r11 = r0.isInstancePos(r14, r11)
            if (r11 == 0) goto L_0x0070
            int r11 = r14.gapEnd
            if (r9 < r11) goto L_0x006d
            int r11 = r14.gapEnd
            int r12 = r14.gapStart
            int r11 = r11 - r12
            int r9 = r9 - r11
        L_0x006d:
            int r11 = r9 << 1
            goto L_0x002b
        L_0x0070:
            int r8 = r9 + 1
        L_0x0072:
            r9 = r8
            goto L_0x001f
        L_0x0074:
            switch(r5) {
                case 61696: goto L_0x00e9;
                case 61697: goto L_0x00e9;
                case 61698: goto L_0x00ab;
                case 61699: goto L_0x00f1;
                case 61700: goto L_0x00ab;
                case 61701: goto L_0x00f1;
                case 61702: goto L_0x00b0;
                case 61703: goto L_0x0077;
                case 61704: goto L_0x011f;
                case 61705: goto L_0x00d0;
                case 61706: goto L_0x00c8;
                case 61707: goto L_0x00b3;
                case 61708: goto L_0x00c0;
                case 61709: goto L_0x00ab;
                case 61710: goto L_0x00ab;
                case 61711: goto L_0x00bb;
                case 61712: goto L_0x00a3;
                case 61713: goto L_0x00c8;
                case 61714: goto L_0x00a8;
                case 61715: goto L_0x00cd;
                case 61716: goto L_0x00f6;
                case 61717: goto L_0x0111;
                case 61718: goto L_0x00ee;
                case 61719: goto L_0x0103;
                case 61720: goto L_0x00a0;
                default: goto L_0x0077;
            }
        L_0x0077:
            r11 = 40960(0xa000, float:5.7397E-41)
            if (r5 < r11) goto L_0x0143
            r11 = 45055(0xafff, float:6.3136E-41)
            if (r5 > r11) goto L_0x0143
            if (r18 == 0) goto L_0x0138
            int r8 = r9 + 3
        L_0x0085:
            if (r2 == 0) goto L_0x0072
        L_0x0087:
            if (r9 <= r10) goto L_0x0072
            int r11 = r9 << 1
            r0 = r16
            boolean r11 = r0.isInstancePos(r14, r11)
            if (r11 == 0) goto L_0x0072
            int r11 = r14.gapEnd
            if (r9 < r11) goto L_0x009d
            int r11 = r14.gapEnd
            int r12 = r14.gapStart
            int r11 = r11 - r12
            int r9 = r9 - r11
        L_0x009d:
            int r11 = r9 << 1
            goto L_0x002b
        L_0x00a0:
            int r8 = r9 + 3
            goto L_0x0072
        L_0x00a3:
            int r8 = r9 + 5
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00a8:
            int r8 = r9 + 5
            goto L_0x0072
        L_0x00ab:
            int r8 = r9 + 3
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00b0:
            int r8 = r9 + 2
            goto L_0x0072
        L_0x00b3:
            if (r18 != 0) goto L_0x00b8
            r11 = 0
            goto L_0x002b
        L_0x00b8:
            int r8 = r9 + 2
            goto L_0x0072
        L_0x00bb:
            int r8 = r9 + 5
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00c0:
            if (r18 != 0) goto L_0x00c5
            r11 = 0
            goto L_0x002b
        L_0x00c5:
            int r8 = r9 + 7
            goto L_0x0072
        L_0x00c8:
            if (r18 != 0) goto L_0x00cd
            r11 = 0
            goto L_0x002b
        L_0x00cd:
            int r8 = r9 + 1
            goto L_0x0072
        L_0x00d0:
            if (r3 == 0) goto L_0x00e6
            int r11 = r9 + 3
            int r6 = r14.getIntN(r11)
            int r12 = r6 + 1
            if (r6 >= 0) goto L_0x00e4
            char[] r11 = r14.data
            int r11 = r11.length
        L_0x00df:
            int r8 = r12 + r11
        L_0x00e1:
            if (r1 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00e4:
            r11 = r9
            goto L_0x00df
        L_0x00e6:
            int r8 = r9 + 5
            goto L_0x00e1
        L_0x00e9:
            int r8 = r9 + 1
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00ee:
            int r8 = r9 + 1
            goto L_0x0072
        L_0x00f1:
            int r8 = r9 + 5
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00f6:
            int r11 = r9 + 5
            int r12 = r9 + 3
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0103:
            int r11 = r9 + 3
            int r12 = r9 + 1
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0111:
            int r11 = r9 + 3
            int r12 = r9 + 1
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x011f:
            if (r18 == 0) goto L_0x0127
            int r8 = r9 + 3
        L_0x0123:
            if (r2 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0127:
            int r11 = r9 + 1
            int r6 = r14.getIntN(r11)
            if (r6 >= 0) goto L_0x0136
            char[] r11 = r14.data
            int r11 = r11.length
        L_0x0132:
            int r11 = r11 + r6
            int r8 = r11 + 7
            goto L_0x0123
        L_0x0136:
            r11 = r9
            goto L_0x0132
        L_0x0138:
            char[] r11 = r14.data
            int r12 = r9 + 1
            char r11 = r11[r12]
            int r11 = r11 + r9
            int r8 = r11 + 2
            goto L_0x0085
        L_0x0143:
            java.lang.Error r11 = new java.lang.Error
            java.lang.StringBuilder r12 = new java.lang.StringBuilder
            r12.<init>()
            java.lang.String r13 = "unknown code:"
            java.lang.StringBuilder r12 = r12.append(r13)
            java.lang.StringBuilder r12 = r12.append(r5)
            java.lang.String r12 = r12.toString()
            r11.<init>(r12)
            throw r11
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.lists.TreeList.nextMatching(int, gnu.lists.ItemPredicate, int, boolean):int");
    }
public int nextMatching ( int r15 , gnu . lists . ItemPredicate r16 , int r17 , boolean r18 ) { /*
            r14 = this;
            int r10 = r14.posToDataIndex(r15)
            r0 = r17
            int r7 = r14.posToDataIndex(r0)
            r9 = r10
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.NodePredicate
            if (r11 == 0) goto L_0x0015
            int r9 = r14.nextNodeIndex(r9, r7)
        L_0x0015:
            r1 = 0
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.ElementPredicate
            if (r11 == 0) goto L_0x002c
            r3 = 1
            r2 = 1
            r4 = 0
        L_0x001f:
            int r11 = r14.gapStart
            if (r9 != r11) goto L_0x0025
            int r9 = r14.gapEnd
        L_0x0025:
            if (r9 < r7) goto L_0x003a
            r11 = -1
            if (r7 == r11) goto L_0x003a
            r11 = 0
        L_0x002b:
            return r11
        L_0x002c:
            r0 = r16
            boolean r11 = r0 instanceof gnu.lists.AttributePredicate
            if (r11 == 0) goto L_0x0036
            r3 = 1
            r2 = 0
            r4 = 0
            goto L_0x001f
        L_0x0036:
            r3 = 1
            r2 = 1
            r4 = 1
            goto L_0x001f
        L_0x003a:
            char[] r11 = r14.data
            char r5 = r11[r9]
            r11 = 40959(0x9fff, float:5.7396E-41)
            if (r5 <= r11) goto L_0x0057
            r11 = 57344(0xe000, float:8.0356E-41)
            if (r5 < r11) goto L_0x004d
            r11 = 61439(0xefff, float:8.6094E-41)
            if (r5 <= r11) goto L_0x0057
        L_0x004d:
            r11 = 45056(0xb000, float:6.3137E-41)
            if (r5 < r11) goto L_0x0074
            r11 = 57343(0xdfff, float:8.0355E-41)
            if (r5 > r11) goto L_0x0074
        L_0x0057:
            if (r4 == 0) goto L_0x0070
            int r11 = r9 << 1
            r0 = r16
            boolean r11 = r0.isInstancePos(r14, r11)
            if (r11 == 0) goto L_0x0070
            int r11 = r14.gapEnd
            if (r9 < r11) goto L_0x006d
            int r11 = r14.gapEnd
            int r12 = r14.gapStart
            int r11 = r11 - r12
            int r9 = r9 - r11
        L_0x006d:
            int r11 = r9 << 1
            goto L_0x002b
        L_0x0070:
            int r8 = r9 + 1
        L_0x0072:
            r9 = r8
            goto L_0x001f
        L_0x0074:
            switch(r5) {
                case 61696: goto L_0x00e9;
                case 61697: goto L_0x00e9;
                case 61698: goto L_0x00ab;
                case 61699: goto L_0x00f1;
                case 61700: goto L_0x00ab;
                case 61701: goto L_0x00f1;
                case 61702: goto L_0x00b0;
                case 61703: goto L_0x0077;
                case 61704: goto L_0x011f;
                case 61705: goto L_0x00d0;
                case 61706: goto L_0x00c8;
                case 61707: goto L_0x00b3;
                case 61708: goto L_0x00c0;
                case 61709: goto L_0x00ab;
                case 61710: goto L_0x00ab;
                case 61711: goto L_0x00bb;
                case 61712: goto L_0x00a3;
                case 61713: goto L_0x00c8;
                case 61714: goto L_0x00a8;
                case 61715: goto L_0x00cd;
                case 61716: goto L_0x00f6;
                case 61717: goto L_0x0111;
                case 61718: goto L_0x00ee;
                case 61719: goto L_0x0103;
                case 61720: goto L_0x00a0;
                default: goto L_0x0077;
            }
        L_0x0077:
            r11 = 40960(0xa000, float:5.7397E-41)
            if (r5 < r11) goto L_0x0143
            r11 = 45055(0xafff, float:6.3136E-41)
            if (r5 > r11) goto L_0x0143
            if (r18 == 0) goto L_0x0138
            int r8 = r9 + 3
        L_0x0085:
            if (r2 == 0) goto L_0x0072
        L_0x0087:
            if (r9 <= r10) goto L_0x0072
            int r11 = r9 << 1
            r0 = r16
            boolean r11 = r0.isInstancePos(r14, r11)
            if (r11 == 0) goto L_0x0072
            int r11 = r14.gapEnd
            if (r9 < r11) goto L_0x009d
            int r11 = r14.gapEnd
            int r12 = r14.gapStart
            int r11 = r11 - r12
            int r9 = r9 - r11
        L_0x009d:
            int r11 = r9 << 1
            goto L_0x002b
        L_0x00a0:
            int r8 = r9 + 3
            goto L_0x0072
        L_0x00a3:
            int r8 = r9 + 5
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00a8:
            int r8 = r9 + 5
            goto L_0x0072
        L_0x00ab:
            int r8 = r9 + 3
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00b0:
            int r8 = r9 + 2
            goto L_0x0072
        L_0x00b3:
            if (r18 != 0) goto L_0x00b8
            r11 = 0
            goto L_0x002b
        L_0x00b8:
            int r8 = r9 + 2
            goto L_0x0072
        L_0x00bb:
            int r8 = r9 + 5
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00c0:
            if (r18 != 0) goto L_0x00c5
            r11 = 0
            goto L_0x002b
        L_0x00c5:
            int r8 = r9 + 7
            goto L_0x0072
        L_0x00c8:
            if (r18 != 0) goto L_0x00cd
            r11 = 0
            goto L_0x002b
        L_0x00cd:
            int r8 = r9 + 1
            goto L_0x0072
        L_0x00d0:
            if (r3 == 0) goto L_0x00e6
            int r11 = r9 + 3
            int r6 = r14.getIntN(r11)
            int r12 = r6 + 1
            if (r6 >= 0) goto L_0x00e4
            char[] r11 = r14.data
            int r11 = r11.length
        L_0x00df:
            int r8 = r12 + r11
        L_0x00e1:
            if (r1 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00e4:
            r11 = r9
            goto L_0x00df
        L_0x00e6:
            int r8 = r9 + 5
            goto L_0x00e1
        L_0x00e9:
            int r8 = r9 + 1
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00ee:
            int r8 = r9 + 1
            goto L_0x0072
        L_0x00f1:
            int r8 = r9 + 5
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x00f6:
            int r11 = r9 + 5
            int r12 = r9 + 3
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0103:
            int r11 = r9 + 3
            int r12 = r9 + 1
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r3 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0111:
            int r11 = r9 + 3
            int r12 = r9 + 1
            int r12 = r14.getIntN(r12)
            int r8 = r11 + r12
            if (r4 == 0) goto L_0x0072
            goto L_0x0087
        L_0x011f:
            if (r18 == 0) goto L_0x0127
            int r8 = r9 + 3
        L_0x0123:
            if (r2 == 0) goto L_0x0072
            goto L_0x0087
        L_0x0127:
            int r11 = r9 + 1
            int r6 = r14.getIntN(r11)
            if (r6 >= 0) goto L_0x0136
            char[] r11 = r14.data
            int r11 = r11.length
        L_0x0132:
            int r11 = r11 + r6
            int r8 = r11 + 7
            goto L_0x0123
        L_0x0136:
            r11 = r9
            goto L_0x0132
        L_0x0138:
            char[] r11 = r14.data
            int r12 = r9 + 1
            char r11 = r11[r12]
            int r11 = r11 + r9
            int r8 = r11 + 2
            goto L_0x0085
        L_0x0143:
            java.lang.Error r11 = new java.lang.Error
            java.lang.StringBuilder r12 = new java.lang.StringBuilder
            r12.<init>()
            java.lang.String r13 = "unknown code:"
            java.lang.StringBuilder r12 = r12.append(r13)
            java.lang.StringBuilder r12 = r12.append(r5)
            java.lang.String r12 = r12.toString()
            r11.<init>(r12)
            throw r11
        */ throw new UnsupportedOperationException ( "Method not decompiled: gnu.lists.TreeList.nextMatching(int, gnu.lists.ItemPredicate, int, boolean):int" ) ; }
Code decompiled incorrectly, please refer to instructions dump.
Code decompiled incorrectly please refer to instructions dump .