Source/sources/gnu/kawa/functions/DisplayFormat.java
public void writeObjectRaw(java.lang.Object r29, gnu.lists.Consumer r30) {
        /*
            r28 = this;
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Boolean
            r24 = r0
            if (r24 == 0) goto L_0x0018
            java.lang.Boolean r29 = (java.lang.Boolean) r29
            boolean r24 = r29.booleanValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.writeBoolean(r1, r2)
        L_0x0017:
            return
        L_0x0018:
            r0 = r29
            boolean r0 = r0 instanceof gnu.text.Char
            r24 = r0
            if (r24 == 0) goto L_0x0030
            gnu.text.Char r29 = (gnu.text.Char) r29
            int r24 = r29.intValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0030:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Character
            r24 = r0
            if (r24 == 0) goto L_0x0048
            java.lang.Character r29 = (java.lang.Character) r29
            char r24 = r29.charValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0048:
            r0 = r29
            boolean r0 = r0 instanceof gnu.mapping.Symbol
            r24 = r0
            if (r24 == 0) goto L_0x008b
            r19 = r29
            gnu.mapping.Symbol r19 = (gnu.mapping.Symbol) r19
            gnu.mapping.Namespace r24 = r19.getNamespace()
            gnu.kawa.xml.XmlNamespace r25 = gnu.kawa.xml.XmlNamespace.HTML
            r0 = r24
            r1 = r25
            if (r0 != r1) goto L_0x0079
            java.lang.String r24 = "html:"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r24 = r19.getLocalPart()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0079:
            r0 = r28
            boolean r0 = r0.readable
            r24 = r0
            r0 = r28
            r1 = r19
            r2 = r30
            r3 = r24
            r0.writeSymbol(r1, r2, r3)
            goto L_0x0017
        L_0x008b:
            r0 = r29
            boolean r0 = r0 instanceof java.net.URI
            r24 = r0
            if (r24 == 0) goto L_0x00ca
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x00ca
            r0 = r30
            boolean r0 = r0 instanceof java.io.PrintWriter
            r24 = r0
            if (r24 == 0) goto L_0x00ca
            java.lang.String r24 = "#,(URI "
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r25 = r29.toString()
            r24 = r30
            java.io.PrintWriter r24 = (java.io.PrintWriter) r24
            r26 = 1
            r0 = r25
            r1 = r24
            r2 = r26
            gnu.lists.Strings.printQuoted(r0, r1, r2)
            r24 = 41
            r0 = r30
            r1 = r24
            r0.write(r1)
            goto L_0x0017
        L_0x00ca:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.CharSequence
            r24 = r0
            if (r24 == 0) goto L_0x013a
            r18 = r29
            java.lang.CharSequence r18 = (java.lang.CharSequence) r18
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x00f3
            r0 = r30
            boolean r0 = r0 instanceof java.io.PrintWriter
            r24 = r0
            if (r24 == 0) goto L_0x00f3
            java.io.PrintWriter r30 = (java.io.PrintWriter) r30
            r24 = 1
            r0 = r18
            r1 = r30
            r2 = r24
            gnu.lists.Strings.printQuoted(r0, r1, r2)
            goto L_0x0017
        L_0x00f3:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.String
            r24 = r0
            if (r24 == 0) goto L_0x0106
            java.lang.String r29 = (java.lang.String) r29
            r0 = r30
            r1 = r29
            r0.write(r1)
            goto L_0x0017
        L_0x0106:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.CharSeq
            r24 = r0
            if (r24 == 0) goto L_0x0123
            r15 = r29
            gnu.lists.CharSeq r15 = (gnu.lists.CharSeq) r15
            r24 = 0
            int r25 = r15.size()
            r0 = r24
            r1 = r25
            r2 = r30
            r15.consume(r0, r1, r2)
            goto L_0x0017
        L_0x0123:
            int r13 = r18.length()
            r11 = 0
        L_0x0128:
            if (r11 >= r13) goto L_0x0017
            r0 = r18
            char r24 = r0.charAt(r11)
            r0 = r30
            r1 = r24
            r0.write(r1)
            int r11 = r11 + 1
            goto L_0x0128
        L_0x013a:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.LList
            r24 = r0
            if (r24 == 0) goto L_0x0153
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x0153
            gnu.lists.LList r29 = (gnu.lists.LList) r29
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            r28.writeList(r29, r30)
            goto L_0x0017
        L_0x0153:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.SimpleVector
            r24 = r0
            if (r24 == 0) goto L_0x01fc
            r21 = r29
            gnu.lists.SimpleVector r21 = (gnu.lists.SimpleVector) r21
            java.lang.String r20 = r21.getTag()
            r0 = r28
            char r0 = r0.language
            r24 = r0
            r25 = 69
            r0 = r24
            r1 = r25
            if (r0 != r1) goto L_0x01c1
            java.lang.String r17 = "["
            java.lang.String r9 = "]"
        L_0x0175:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01e6
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r25 = 0
            r0 = r24
            r1 = r17
            r2 = r25
            r0.startLogicalBlock(r1, r2, r9)
        L_0x018c:
            int r24 = r21.size()
            int r10 = r24 << 1
            r12 = 0
        L_0x0193:
            if (r12 >= r10) goto L_0x01b0
            if (r12 <= 0) goto L_0x01a6
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01a6
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r24.writeSpaceFill()
        L_0x01a6:
            r0 = r21
            r1 = r30
            boolean r24 = r0.consumeNext(r12, r1)
            if (r24 != 0) goto L_0x01f0
        L_0x01b0:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01f3
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            r0 = r30
            r0.endLogicalBlock(r9)
            goto L_0x0017
        L_0x01c1:
            if (r20 != 0) goto L_0x01c8
            java.lang.String r17 = "#("
        L_0x01c5:
            java.lang.String r9 = ")"
            goto L_0x0175
        L_0x01c8:
            java.lang.StringBuilder r24 = new java.lang.StringBuilder
            r24.<init>()
            java.lang.String r25 = "#"
            java.lang.StringBuilder r24 = r24.append(r25)
            r0 = r24
            r1 = r20
            java.lang.StringBuilder r24 = r0.append(r1)
            java.lang.String r25 = "("
            java.lang.StringBuilder r24 = r24.append(r25)
            java.lang.String r17 = r24.toString()
            goto L_0x01c5
        L_0x01e6:
            r0 = r28
            r1 = r17
            r2 = r30
            r0.write(r1, r2)
            goto L_0x018c
        L_0x01f0:
            int r12 = r12 + 2
            goto L_0x0193
        L_0x01f3:
            r0 = r28
            r1 = r30
            r0.write(r9, r1)
            goto L_0x0017
        L_0x01fc:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.Array
            r24 = r0
            if (r24 == 0) goto L_0x0219
            gnu.lists.Array r29 = (gnu.lists.Array) r29
            r24 = 0
            r25 = 0
            r0 = r28
            r1 = r29
            r2 = r24
            r3 = r25
            r4 = r30
            r0.write(r1, r2, r3, r4)
            goto L_0x0017
        L_0x0219:
            r0 = r29
            boolean r0 = r0 instanceof gnu.kawa.xml.KNode
            r24 = r0
            if (r24 == 0) goto L_0x025d
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x0232
            java.lang.String r24 = "#"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
        L_0x0232:
            r0 = r30
            boolean r0 = r0 instanceof java.io.Writer
            r24 = r0
            if (r24 == 0) goto L_0x0253
            java.io.Writer r30 = (java.io.Writer) r30
            r22 = r30
        L_0x023e:
            gnu.xml.XMLPrinter r23 = new gnu.xml.XMLPrinter
            r0 = r23
            r1 = r22
            r0.<init>(r1)
            r0 = r23
            r1 = r29
            r0.writeObject(r1)
            r23.closeThis()
            goto L_0x0017
        L_0x0253:
            gnu.lists.ConsumerWriter r22 = new gnu.lists.ConsumerWriter
            r0 = r22
            r1 = r30
            r0.<init>(r1)
            goto L_0x023e
        L_0x025d:
            gnu.mapping.Values r24 = gnu.mapping.Values.empty
            r0 = r29
            r1 = r24
            if (r0 != r1) goto L_0x0278
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x0278
            java.lang.String r24 = "#!void"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0278:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.Consumable
            r24 = r0
            if (r24 == 0) goto L_0x0287
            gnu.lists.Consumable r29 = (gnu.lists.Consumable) r29
            r29.consume(r30)
            goto L_0x0017
        L_0x0287:
            r0 = r29
            boolean r0 = r0 instanceof gnu.text.Printable
            r24 = r0
            if (r24 == 0) goto L_0x0296
            gnu.text.Printable r29 = (gnu.text.Printable) r29
            r29.print(r30)
            goto L_0x0017
        L_0x0296:
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.RatNum
            r24 = r0
            if (r24 == 0) goto L_0x037a
            r6 = 10
            r16 = 0
            gnu.mapping.ThreadLocation r24 = outBase
            r25 = 0
            java.lang.Object r7 = r24.get(r25)
            gnu.mapping.ThreadLocation r24 = outRadix
            r25 = 0
            java.lang.Object r14 = r24.get(r25)
            if (r14 == 0) goto L_0x02c8
            java.lang.Boolean r24 = java.lang.Boolean.TRUE
            r0 = r24
            if (r14 == r0) goto L_0x02c6
            java.lang.String r24 = "yes"
            java.lang.String r25 = r14.toString()
            boolean r24 = r24.equals(r25)
            if (r24 == 0) goto L_0x02c8
        L_0x02c6:
            r16 = 1
        L_0x02c8:
            boolean r0 = r7 instanceof java.lang.Number
            r24 = r0
            if (r24 == 0) goto L_0x0317
            r24 = r7
            gnu.math.IntNum r24 = (gnu.math.IntNum) r24
            int r6 = r24.intValue()
        L_0x02d6:
            r24 = r29
            gnu.math.RatNum r24 = (gnu.math.RatNum) r24
            r0 = r24
            java.lang.String r5 = r0.toString(r6)
            if (r16 == 0) goto L_0x02f3
            r24 = 16
            r0 = r24
            if (r6 != r0) goto L_0x0322
            java.lang.String r24 = "#x"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
        L_0x02f3:
            r0 = r28
            r1 = r30
            r0.write(r5, r1)
            if (r16 == 0) goto L_0x0017
            r24 = 10
            r0 = r24
            if (r6 != r0) goto L_0x0017
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.IntNum
            r24 = r0
            if (r24 == 0) goto L_0x0017
            java.lang.String r24 = "."
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0317:
            if (r7 == 0) goto L_0x02d6
            java.lang.String r24 = r7.toString()
            int r6 = java.lang.Integer.parseInt(r24)
            goto L_0x02d6
        L_0x0322:
            r24 = 8
            r0 = r24
            if (r6 != r0) goto L_0x0334
            java.lang.String r24 = "#o"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x0334:
            r24 = 2
            r0 = r24
            if (r6 != r0) goto L_0x0346
            java.lang.String r24 = "#b"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x0346:
            r24 = 10
            r0 = r24
            if (r6 != r0) goto L_0x0354
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.IntNum
            r24 = r0
            if (r24 != 0) goto L_0x02f3
        L_0x0354:
            java.lang.StringBuilder r24 = new java.lang.StringBuilder
            r24.<init>()
            java.lang.String r25 = "#"
            java.lang.StringBuilder r24 = r24.append(r25)
            r0 = r24
            java.lang.StringBuilder r24 = r0.append(r7)
            java.lang.String r25 = "r"
            java.lang.StringBuilder r24 = r24.append(r25)
            java.lang.String r24 = r24.toString()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x037a:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Enum
            r24 = r0
            if (r24 == 0) goto L_0x03b5
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x03b5
            java.lang.Class r24 = r29.getClass()
            java.lang.String r24 = r24.getName()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r24 = ":"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.Enum r29 = (java.lang.Enum) r29
            java.lang.String r24 = r29.name()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x03b5:
            if (r29 != 0) goto L_0x03c7
            r5 = 0
        L_0x03b8:
            if (r5 != 0) goto L_0x044f
            java.lang.String r24 = "#!null"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x03c7:
            java.lang.Class r8 = r29.getClass()
            boolean r24 = r8.isArray()
            if (r24 == 0) goto L_0x0449
            int r13 = java.lang.reflect.Array.getLength(r29)
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x041b
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            java.lang.String r25 = "["
            r26 = 0
            java.lang.String r27 = "]"
            r24.startLogicalBlock(r25, r26, r27)
        L_0x03ea:
            r11 = 0
        L_0x03eb:
            if (r11 >= r13) goto L_0x0427
            if (r11 <= 0) goto L_0x0409
            java.lang.String r24 = " "
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x0409
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r24.writeBreakFill()
        L_0x0409:
            r0 = r29
            java.lang.Object r24 = java.lang.reflect.Array.get(r0, r11)
            r0 = r28
            r1 = r24
            r2 = r30
            r0.writeObject(r1, r2)
            int r11 = r11 + 1
            goto L_0x03eb
        L_0x041b:
            java.lang.String r24 = "["
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x03ea
        L_0x0427:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x043c
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            java.lang.String r24 = "]"
            r0 = r30
            r1 = r24
            r0.endLogicalBlock(r1)
            goto L_0x0017
        L_0x043c:
            java.lang.String r24 = "]"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0449:
            java.lang.String r5 = r29.toString()
            goto L_0x03b8
        L_0x044f:
            r0 = r28
            r1 = r30
            r0.write(r5, r1)
            goto L_0x0017
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.kawa.functions.DisplayFormat.writeObjectRaw(java.lang.Object, gnu.lists.Consumer):void");
    }
/* 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 void writeObjectRaw(java.lang.Object r29, gnu.lists.Consumer r30) {
        /*
            r28 = this;
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Boolean
            r24 = r0
            if (r24 == 0) goto L_0x0018
            java.lang.Boolean r29 = (java.lang.Boolean) r29
            boolean r24 = r29.booleanValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.writeBoolean(r1, r2)
        L_0x0017:
            return
        L_0x0018:
            r0 = r29
            boolean r0 = r0 instanceof gnu.text.Char
            r24 = r0
            if (r24 == 0) goto L_0x0030
            gnu.text.Char r29 = (gnu.text.Char) r29
            int r24 = r29.intValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0030:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Character
            r24 = r0
            if (r24 == 0) goto L_0x0048
            java.lang.Character r29 = (java.lang.Character) r29
            char r24 = r29.charValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0048:
            r0 = r29
            boolean r0 = r0 instanceof gnu.mapping.Symbol
            r24 = r0
            if (r24 == 0) goto L_0x008b
            r19 = r29
            gnu.mapping.Symbol r19 = (gnu.mapping.Symbol) r19
            gnu.mapping.Namespace r24 = r19.getNamespace()
            gnu.kawa.xml.XmlNamespace r25 = gnu.kawa.xml.XmlNamespace.HTML
            r0 = r24
            r1 = r25
            if (r0 != r1) goto L_0x0079
            java.lang.String r24 = "html:"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r24 = r19.getLocalPart()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0079:
            r0 = r28
            boolean r0 = r0.readable
            r24 = r0
            r0 = r28
            r1 = r19
            r2 = r30
            r3 = r24
            r0.writeSymbol(r1, r2, r3)
            goto L_0x0017
        L_0x008b:
            r0 = r29
            boolean r0 = r0 instanceof java.net.URI
            r24 = r0
            if (r24 == 0) goto L_0x00ca
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x00ca
            r0 = r30
            boolean r0 = r0 instanceof java.io.PrintWriter
            r24 = r0
            if (r24 == 0) goto L_0x00ca
            java.lang.String r24 = "#,(URI "
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r25 = r29.toString()
            r24 = r30
            java.io.PrintWriter r24 = (java.io.PrintWriter) r24
            r26 = 1
            r0 = r25
            r1 = r24
            r2 = r26
            gnu.lists.Strings.printQuoted(r0, r1, r2)
            r24 = 41
            r0 = r30
            r1 = r24
            r0.write(r1)
            goto L_0x0017
        L_0x00ca:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.CharSequence
            r24 = r0
            if (r24 == 0) goto L_0x013a
            r18 = r29
            java.lang.CharSequence r18 = (java.lang.CharSequence) r18
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x00f3
            r0 = r30
            boolean r0 = r0 instanceof java.io.PrintWriter
            r24 = r0
            if (r24 == 0) goto L_0x00f3
            java.io.PrintWriter r30 = (java.io.PrintWriter) r30
            r24 = 1
            r0 = r18
            r1 = r30
            r2 = r24
            gnu.lists.Strings.printQuoted(r0, r1, r2)
            goto L_0x0017
        L_0x00f3:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.String
            r24 = r0
            if (r24 == 0) goto L_0x0106
            java.lang.String r29 = (java.lang.String) r29
            r0 = r30
            r1 = r29
            r0.write(r1)
            goto L_0x0017
        L_0x0106:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.CharSeq
            r24 = r0
            if (r24 == 0) goto L_0x0123
            r15 = r29
            gnu.lists.CharSeq r15 = (gnu.lists.CharSeq) r15
            r24 = 0
            int r25 = r15.size()
            r0 = r24
            r1 = r25
            r2 = r30
            r15.consume(r0, r1, r2)
            goto L_0x0017
        L_0x0123:
            int r13 = r18.length()
            r11 = 0
        L_0x0128:
            if (r11 >= r13) goto L_0x0017
            r0 = r18
            char r24 = r0.charAt(r11)
            r0 = r30
            r1 = r24
            r0.write(r1)
            int r11 = r11 + 1
            goto L_0x0128
        L_0x013a:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.LList
            r24 = r0
            if (r24 == 0) goto L_0x0153
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x0153
            gnu.lists.LList r29 = (gnu.lists.LList) r29
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            r28.writeList(r29, r30)
            goto L_0x0017
        L_0x0153:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.SimpleVector
            r24 = r0
            if (r24 == 0) goto L_0x01fc
            r21 = r29
            gnu.lists.SimpleVector r21 = (gnu.lists.SimpleVector) r21
            java.lang.String r20 = r21.getTag()
            r0 = r28
            char r0 = r0.language
            r24 = r0
            r25 = 69
            r0 = r24
            r1 = r25
            if (r0 != r1) goto L_0x01c1
            java.lang.String r17 = "["
            java.lang.String r9 = "]"
        L_0x0175:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01e6
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r25 = 0
            r0 = r24
            r1 = r17
            r2 = r25
            r0.startLogicalBlock(r1, r2, r9)
        L_0x018c:
            int r24 = r21.size()
            int r10 = r24 << 1
            r12 = 0
        L_0x0193:
            if (r12 >= r10) goto L_0x01b0
            if (r12 <= 0) goto L_0x01a6
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01a6
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r24.writeSpaceFill()
        L_0x01a6:
            r0 = r21
            r1 = r30
            boolean r24 = r0.consumeNext(r12, r1)
            if (r24 != 0) goto L_0x01f0
        L_0x01b0:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01f3
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            r0 = r30
            r0.endLogicalBlock(r9)
            goto L_0x0017
        L_0x01c1:
            if (r20 != 0) goto L_0x01c8
            java.lang.String r17 = "#("
        L_0x01c5:
            java.lang.String r9 = ")"
            goto L_0x0175
        L_0x01c8:
            java.lang.StringBuilder r24 = new java.lang.StringBuilder
            r24.<init>()
            java.lang.String r25 = "#"
            java.lang.StringBuilder r24 = r24.append(r25)
            r0 = r24
            r1 = r20
            java.lang.StringBuilder r24 = r0.append(r1)
            java.lang.String r25 = "("
            java.lang.StringBuilder r24 = r24.append(r25)
            java.lang.String r17 = r24.toString()
            goto L_0x01c5
        L_0x01e6:
            r0 = r28
            r1 = r17
            r2 = r30
            r0.write(r1, r2)
            goto L_0x018c
        L_0x01f0:
            int r12 = r12 + 2
            goto L_0x0193
        L_0x01f3:
            r0 = r28
            r1 = r30
            r0.write(r9, r1)
            goto L_0x0017
        L_0x01fc:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.Array
            r24 = r0
            if (r24 == 0) goto L_0x0219
            gnu.lists.Array r29 = (gnu.lists.Array) r29
            r24 = 0
            r25 = 0
            r0 = r28
            r1 = r29
            r2 = r24
            r3 = r25
            r4 = r30
            r0.write(r1, r2, r3, r4)
            goto L_0x0017
        L_0x0219:
            r0 = r29
            boolean r0 = r0 instanceof gnu.kawa.xml.KNode
            r24 = r0
            if (r24 == 0) goto L_0x025d
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x0232
            java.lang.String r24 = "#"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
        L_0x0232:
            r0 = r30
            boolean r0 = r0 instanceof java.io.Writer
            r24 = r0
            if (r24 == 0) goto L_0x0253
            java.io.Writer r30 = (java.io.Writer) r30
            r22 = r30
        L_0x023e:
            gnu.xml.XMLPrinter r23 = new gnu.xml.XMLPrinter
            r0 = r23
            r1 = r22
            r0.<init>(r1)
            r0 = r23
            r1 = r29
            r0.writeObject(r1)
            r23.closeThis()
            goto L_0x0017
        L_0x0253:
            gnu.lists.ConsumerWriter r22 = new gnu.lists.ConsumerWriter
            r0 = r22
            r1 = r30
            r0.<init>(r1)
            goto L_0x023e
        L_0x025d:
            gnu.mapping.Values r24 = gnu.mapping.Values.empty
            r0 = r29
            r1 = r24
            if (r0 != r1) goto L_0x0278
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x0278
            java.lang.String r24 = "#!void"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0278:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.Consumable
            r24 = r0
            if (r24 == 0) goto L_0x0287
            gnu.lists.Consumable r29 = (gnu.lists.Consumable) r29
            r29.consume(r30)
            goto L_0x0017
        L_0x0287:
            r0 = r29
            boolean r0 = r0 instanceof gnu.text.Printable
            r24 = r0
            if (r24 == 0) goto L_0x0296
            gnu.text.Printable r29 = (gnu.text.Printable) r29
            r29.print(r30)
            goto L_0x0017
        L_0x0296:
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.RatNum
            r24 = r0
            if (r24 == 0) goto L_0x037a
            r6 = 10
            r16 = 0
            gnu.mapping.ThreadLocation r24 = outBase
            r25 = 0
            java.lang.Object r7 = r24.get(r25)
            gnu.mapping.ThreadLocation r24 = outRadix
            r25 = 0
            java.lang.Object r14 = r24.get(r25)
            if (r14 == 0) goto L_0x02c8
            java.lang.Boolean r24 = java.lang.Boolean.TRUE
            r0 = r24
            if (r14 == r0) goto L_0x02c6
            java.lang.String r24 = "yes"
            java.lang.String r25 = r14.toString()
            boolean r24 = r24.equals(r25)
            if (r24 == 0) goto L_0x02c8
        L_0x02c6:
            r16 = 1
        L_0x02c8:
            boolean r0 = r7 instanceof java.lang.Number
            r24 = r0
            if (r24 == 0) goto L_0x0317
            r24 = r7
            gnu.math.IntNum r24 = (gnu.math.IntNum) r24
            int r6 = r24.intValue()
        L_0x02d6:
            r24 = r29
            gnu.math.RatNum r24 = (gnu.math.RatNum) r24
            r0 = r24
            java.lang.String r5 = r0.toString(r6)
            if (r16 == 0) goto L_0x02f3
            r24 = 16
            r0 = r24
            if (r6 != r0) goto L_0x0322
            java.lang.String r24 = "#x"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
        L_0x02f3:
            r0 = r28
            r1 = r30
            r0.write(r5, r1)
            if (r16 == 0) goto L_0x0017
            r24 = 10
            r0 = r24
            if (r6 != r0) goto L_0x0017
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.IntNum
            r24 = r0
            if (r24 == 0) goto L_0x0017
            java.lang.String r24 = "."
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0317:
            if (r7 == 0) goto L_0x02d6
            java.lang.String r24 = r7.toString()
            int r6 = java.lang.Integer.parseInt(r24)
            goto L_0x02d6
        L_0x0322:
            r24 = 8
            r0 = r24
            if (r6 != r0) goto L_0x0334
            java.lang.String r24 = "#o"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x0334:
            r24 = 2
            r0 = r24
            if (r6 != r0) goto L_0x0346
            java.lang.String r24 = "#b"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x0346:
            r24 = 10
            r0 = r24
            if (r6 != r0) goto L_0x0354
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.IntNum
            r24 = r0
            if (r24 != 0) goto L_0x02f3
        L_0x0354:
            java.lang.StringBuilder r24 = new java.lang.StringBuilder
            r24.<init>()
            java.lang.String r25 = "#"
            java.lang.StringBuilder r24 = r24.append(r25)
            r0 = r24
            java.lang.StringBuilder r24 = r0.append(r7)
            java.lang.String r25 = "r"
            java.lang.StringBuilder r24 = r24.append(r25)
            java.lang.String r24 = r24.toString()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x037a:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Enum
            r24 = r0
            if (r24 == 0) goto L_0x03b5
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x03b5
            java.lang.Class r24 = r29.getClass()
            java.lang.String r24 = r24.getName()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r24 = ":"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.Enum r29 = (java.lang.Enum) r29
            java.lang.String r24 = r29.name()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x03b5:
            if (r29 != 0) goto L_0x03c7
            r5 = 0
        L_0x03b8:
            if (r5 != 0) goto L_0x044f
            java.lang.String r24 = "#!null"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x03c7:
            java.lang.Class r8 = r29.getClass()
            boolean r24 = r8.isArray()
            if (r24 == 0) goto L_0x0449
            int r13 = java.lang.reflect.Array.getLength(r29)
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x041b
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            java.lang.String r25 = "["
            r26 = 0
            java.lang.String r27 = "]"
            r24.startLogicalBlock(r25, r26, r27)
        L_0x03ea:
            r11 = 0
        L_0x03eb:
            if (r11 >= r13) goto L_0x0427
            if (r11 <= 0) goto L_0x0409
            java.lang.String r24 = " "
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x0409
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r24.writeBreakFill()
        L_0x0409:
            r0 = r29
            java.lang.Object r24 = java.lang.reflect.Array.get(r0, r11)
            r0 = r28
            r1 = r24
            r2 = r30
            r0.writeObject(r1, r2)
            int r11 = r11 + 1
            goto L_0x03eb
        L_0x041b:
            java.lang.String r24 = "["
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x03ea
        L_0x0427:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x043c
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            java.lang.String r24 = "]"
            r0 = r30
            r1 = r24
            r0.endLogicalBlock(r1)
            goto L_0x0017
        L_0x043c:
            java.lang.String r24 = "]"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0449:
            java.lang.String r5 = r29.toString()
            goto L_0x03b8
        L_0x044f:
            r0 = r28
            r1 = r30
            r0.write(r5, r1)
            goto L_0x0017
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.kawa.functions.DisplayFormat.writeObjectRaw(java.lang.Object, gnu.lists.Consumer):void");
    }
public void writeObjectRaw ( java . lang . Object r29 , gnu . lists . Consumer r30 ) { /*
            r28 = this;
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Boolean
            r24 = r0
            if (r24 == 0) goto L_0x0018
            java.lang.Boolean r29 = (java.lang.Boolean) r29
            boolean r24 = r29.booleanValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.writeBoolean(r1, r2)
        L_0x0017:
            return
        L_0x0018:
            r0 = r29
            boolean r0 = r0 instanceof gnu.text.Char
            r24 = r0
            if (r24 == 0) goto L_0x0030
            gnu.text.Char r29 = (gnu.text.Char) r29
            int r24 = r29.intValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0030:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Character
            r24 = r0
            if (r24 == 0) goto L_0x0048
            java.lang.Character r29 = (java.lang.Character) r29
            char r24 = r29.charValue()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0048:
            r0 = r29
            boolean r0 = r0 instanceof gnu.mapping.Symbol
            r24 = r0
            if (r24 == 0) goto L_0x008b
            r19 = r29
            gnu.mapping.Symbol r19 = (gnu.mapping.Symbol) r19
            gnu.mapping.Namespace r24 = r19.getNamespace()
            gnu.kawa.xml.XmlNamespace r25 = gnu.kawa.xml.XmlNamespace.HTML
            r0 = r24
            r1 = r25
            if (r0 != r1) goto L_0x0079
            java.lang.String r24 = "html:"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r24 = r19.getLocalPart()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0079:
            r0 = r28
            boolean r0 = r0.readable
            r24 = r0
            r0 = r28
            r1 = r19
            r2 = r30
            r3 = r24
            r0.writeSymbol(r1, r2, r3)
            goto L_0x0017
        L_0x008b:
            r0 = r29
            boolean r0 = r0 instanceof java.net.URI
            r24 = r0
            if (r24 == 0) goto L_0x00ca
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x00ca
            r0 = r30
            boolean r0 = r0 instanceof java.io.PrintWriter
            r24 = r0
            if (r24 == 0) goto L_0x00ca
            java.lang.String r24 = "#,(URI "
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r25 = r29.toString()
            r24 = r30
            java.io.PrintWriter r24 = (java.io.PrintWriter) r24
            r26 = 1
            r0 = r25
            r1 = r24
            r2 = r26
            gnu.lists.Strings.printQuoted(r0, r1, r2)
            r24 = 41
            r0 = r30
            r1 = r24
            r0.write(r1)
            goto L_0x0017
        L_0x00ca:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.CharSequence
            r24 = r0
            if (r24 == 0) goto L_0x013a
            r18 = r29
            java.lang.CharSequence r18 = (java.lang.CharSequence) r18
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x00f3
            r0 = r30
            boolean r0 = r0 instanceof java.io.PrintWriter
            r24 = r0
            if (r24 == 0) goto L_0x00f3
            java.io.PrintWriter r30 = (java.io.PrintWriter) r30
            r24 = 1
            r0 = r18
            r1 = r30
            r2 = r24
            gnu.lists.Strings.printQuoted(r0, r1, r2)
            goto L_0x0017
        L_0x00f3:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.String
            r24 = r0
            if (r24 == 0) goto L_0x0106
            java.lang.String r29 = (java.lang.String) r29
            r0 = r30
            r1 = r29
            r0.write(r1)
            goto L_0x0017
        L_0x0106:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.CharSeq
            r24 = r0
            if (r24 == 0) goto L_0x0123
            r15 = r29
            gnu.lists.CharSeq r15 = (gnu.lists.CharSeq) r15
            r24 = 0
            int r25 = r15.size()
            r0 = r24
            r1 = r25
            r2 = r30
            r15.consume(r0, r1, r2)
            goto L_0x0017
        L_0x0123:
            int r13 = r18.length()
            r11 = 0
        L_0x0128:
            if (r11 >= r13) goto L_0x0017
            r0 = r18
            char r24 = r0.charAt(r11)
            r0 = r30
            r1 = r24
            r0.write(r1)
            int r11 = r11 + 1
            goto L_0x0128
        L_0x013a:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.LList
            r24 = r0
            if (r24 == 0) goto L_0x0153
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x0153
            gnu.lists.LList r29 = (gnu.lists.LList) r29
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            r28.writeList(r29, r30)
            goto L_0x0017
        L_0x0153:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.SimpleVector
            r24 = r0
            if (r24 == 0) goto L_0x01fc
            r21 = r29
            gnu.lists.SimpleVector r21 = (gnu.lists.SimpleVector) r21
            java.lang.String r20 = r21.getTag()
            r0 = r28
            char r0 = r0.language
            r24 = r0
            r25 = 69
            r0 = r24
            r1 = r25
            if (r0 != r1) goto L_0x01c1
            java.lang.String r17 = "["
            java.lang.String r9 = "]"
        L_0x0175:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01e6
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r25 = 0
            r0 = r24
            r1 = r17
            r2 = r25
            r0.startLogicalBlock(r1, r2, r9)
        L_0x018c:
            int r24 = r21.size()
            int r10 = r24 << 1
            r12 = 0
        L_0x0193:
            if (r12 >= r10) goto L_0x01b0
            if (r12 <= 0) goto L_0x01a6
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01a6
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r24.writeSpaceFill()
        L_0x01a6:
            r0 = r21
            r1 = r30
            boolean r24 = r0.consumeNext(r12, r1)
            if (r24 != 0) goto L_0x01f0
        L_0x01b0:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x01f3
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            r0 = r30
            r0.endLogicalBlock(r9)
            goto L_0x0017
        L_0x01c1:
            if (r20 != 0) goto L_0x01c8
            java.lang.String r17 = "#("
        L_0x01c5:
            java.lang.String r9 = ")"
            goto L_0x0175
        L_0x01c8:
            java.lang.StringBuilder r24 = new java.lang.StringBuilder
            r24.<init>()
            java.lang.String r25 = "#"
            java.lang.StringBuilder r24 = r24.append(r25)
            r0 = r24
            r1 = r20
            java.lang.StringBuilder r24 = r0.append(r1)
            java.lang.String r25 = "("
            java.lang.StringBuilder r24 = r24.append(r25)
            java.lang.String r17 = r24.toString()
            goto L_0x01c5
        L_0x01e6:
            r0 = r28
            r1 = r17
            r2 = r30
            r0.write(r1, r2)
            goto L_0x018c
        L_0x01f0:
            int r12 = r12 + 2
            goto L_0x0193
        L_0x01f3:
            r0 = r28
            r1 = r30
            r0.write(r9, r1)
            goto L_0x0017
        L_0x01fc:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.Array
            r24 = r0
            if (r24 == 0) goto L_0x0219
            gnu.lists.Array r29 = (gnu.lists.Array) r29
            r24 = 0
            r25 = 0
            r0 = r28
            r1 = r29
            r2 = r24
            r3 = r25
            r4 = r30
            r0.write(r1, r2, r3, r4)
            goto L_0x0017
        L_0x0219:
            r0 = r29
            boolean r0 = r0 instanceof gnu.kawa.xml.KNode
            r24 = r0
            if (r24 == 0) goto L_0x025d
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x0232
            java.lang.String r24 = "#"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
        L_0x0232:
            r0 = r30
            boolean r0 = r0 instanceof java.io.Writer
            r24 = r0
            if (r24 == 0) goto L_0x0253
            java.io.Writer r30 = (java.io.Writer) r30
            r22 = r30
        L_0x023e:
            gnu.xml.XMLPrinter r23 = new gnu.xml.XMLPrinter
            r0 = r23
            r1 = r22
            r0.<init>(r1)
            r0 = r23
            r1 = r29
            r0.writeObject(r1)
            r23.closeThis()
            goto L_0x0017
        L_0x0253:
            gnu.lists.ConsumerWriter r22 = new gnu.lists.ConsumerWriter
            r0 = r22
            r1 = r30
            r0.<init>(r1)
            goto L_0x023e
        L_0x025d:
            gnu.mapping.Values r24 = gnu.mapping.Values.empty
            r0 = r29
            r1 = r24
            if (r0 != r1) goto L_0x0278
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x0278
            java.lang.String r24 = "#!void"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0278:
            r0 = r29
            boolean r0 = r0 instanceof gnu.lists.Consumable
            r24 = r0
            if (r24 == 0) goto L_0x0287
            gnu.lists.Consumable r29 = (gnu.lists.Consumable) r29
            r29.consume(r30)
            goto L_0x0017
        L_0x0287:
            r0 = r29
            boolean r0 = r0 instanceof gnu.text.Printable
            r24 = r0
            if (r24 == 0) goto L_0x0296
            gnu.text.Printable r29 = (gnu.text.Printable) r29
            r29.print(r30)
            goto L_0x0017
        L_0x0296:
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.RatNum
            r24 = r0
            if (r24 == 0) goto L_0x037a
            r6 = 10
            r16 = 0
            gnu.mapping.ThreadLocation r24 = outBase
            r25 = 0
            java.lang.Object r7 = r24.get(r25)
            gnu.mapping.ThreadLocation r24 = outRadix
            r25 = 0
            java.lang.Object r14 = r24.get(r25)
            if (r14 == 0) goto L_0x02c8
            java.lang.Boolean r24 = java.lang.Boolean.TRUE
            r0 = r24
            if (r14 == r0) goto L_0x02c6
            java.lang.String r24 = "yes"
            java.lang.String r25 = r14.toString()
            boolean r24 = r24.equals(r25)
            if (r24 == 0) goto L_0x02c8
        L_0x02c6:
            r16 = 1
        L_0x02c8:
            boolean r0 = r7 instanceof java.lang.Number
            r24 = r0
            if (r24 == 0) goto L_0x0317
            r24 = r7
            gnu.math.IntNum r24 = (gnu.math.IntNum) r24
            int r6 = r24.intValue()
        L_0x02d6:
            r24 = r29
            gnu.math.RatNum r24 = (gnu.math.RatNum) r24
            r0 = r24
            java.lang.String r5 = r0.toString(r6)
            if (r16 == 0) goto L_0x02f3
            r24 = 16
            r0 = r24
            if (r6 != r0) goto L_0x0322
            java.lang.String r24 = "#x"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
        L_0x02f3:
            r0 = r28
            r1 = r30
            r0.write(r5, r1)
            if (r16 == 0) goto L_0x0017
            r24 = 10
            r0 = r24
            if (r6 != r0) goto L_0x0017
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.IntNum
            r24 = r0
            if (r24 == 0) goto L_0x0017
            java.lang.String r24 = "."
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0317:
            if (r7 == 0) goto L_0x02d6
            java.lang.String r24 = r7.toString()
            int r6 = java.lang.Integer.parseInt(r24)
            goto L_0x02d6
        L_0x0322:
            r24 = 8
            r0 = r24
            if (r6 != r0) goto L_0x0334
            java.lang.String r24 = "#o"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x0334:
            r24 = 2
            r0 = r24
            if (r6 != r0) goto L_0x0346
            java.lang.String r24 = "#b"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x0346:
            r24 = 10
            r0 = r24
            if (r6 != r0) goto L_0x0354
            r0 = r29
            boolean r0 = r0 instanceof gnu.math.IntNum
            r24 = r0
            if (r24 != 0) goto L_0x02f3
        L_0x0354:
            java.lang.StringBuilder r24 = new java.lang.StringBuilder
            r24.<init>()
            java.lang.String r25 = "#"
            java.lang.StringBuilder r24 = r24.append(r25)
            r0 = r24
            java.lang.StringBuilder r24 = r0.append(r7)
            java.lang.String r25 = "r"
            java.lang.StringBuilder r24 = r24.append(r25)
            java.lang.String r24 = r24.toString()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x02f3
        L_0x037a:
            r0 = r29
            boolean r0 = r0 instanceof java.lang.Enum
            r24 = r0
            if (r24 == 0) goto L_0x03b5
            boolean r24 = r28.getReadableOutput()
            if (r24 == 0) goto L_0x03b5
            java.lang.Class r24 = r29.getClass()
            java.lang.String r24 = r24.getName()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.String r24 = ":"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            java.lang.Enum r29 = (java.lang.Enum) r29
            java.lang.String r24 = r29.name()
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x03b5:
            if (r29 != 0) goto L_0x03c7
            r5 = 0
        L_0x03b8:
            if (r5 != 0) goto L_0x044f
            java.lang.String r24 = "#!null"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x03c7:
            java.lang.Class r8 = r29.getClass()
            boolean r24 = r8.isArray()
            if (r24 == 0) goto L_0x0449
            int r13 = java.lang.reflect.Array.getLength(r29)
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x041b
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            java.lang.String r25 = "["
            r26 = 0
            java.lang.String r27 = "]"
            r24.startLogicalBlock(r25, r26, r27)
        L_0x03ea:
            r11 = 0
        L_0x03eb:
            if (r11 >= r13) goto L_0x0427
            if (r11 <= 0) goto L_0x0409
            java.lang.String r24 = " "
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x0409
            r24 = r30
            gnu.mapping.OutPort r24 = (gnu.mapping.OutPort) r24
            r24.writeBreakFill()
        L_0x0409:
            r0 = r29
            java.lang.Object r24 = java.lang.reflect.Array.get(r0, r11)
            r0 = r28
            r1 = r24
            r2 = r30
            r0.writeObject(r1, r2)
            int r11 = r11 + 1
            goto L_0x03eb
        L_0x041b:
            java.lang.String r24 = "["
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x03ea
        L_0x0427:
            r0 = r30
            boolean r0 = r0 instanceof gnu.mapping.OutPort
            r24 = r0
            if (r24 == 0) goto L_0x043c
            gnu.mapping.OutPort r30 = (gnu.mapping.OutPort) r30
            java.lang.String r24 = "]"
            r0 = r30
            r1 = r24
            r0.endLogicalBlock(r1)
            goto L_0x0017
        L_0x043c:
            java.lang.String r24 = "]"
            r0 = r28
            r1 = r24
            r2 = r30
            r0.write(r1, r2)
            goto L_0x0017
        L_0x0449:
            java.lang.String r5 = r29.toString()
            goto L_0x03b8
        L_0x044f:
            r0 = r28
            r1 = r30
            r0.write(r5, r1)
            goto L_0x0017
        */ throw new UnsupportedOperationException ( "Method not decompiled: gnu.kawa.functions.DisplayFormat.writeObjectRaw(java.lang.Object, gnu.lists.Consumer):void" ) ; }
Code decompiled incorrectly, please refer to instructions dump.
Code decompiled incorrectly please refer to instructions dump .