MP4Atom.smali

.class public Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;
.super Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;
.source "MP4Atom.java"


# annotations
.annotation system Ldalvik/annotation/Signature;
    value = {
        "Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box<",
        "Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;",
        ">;"
    }
.end annotation


# direct methods
.method static constructor <clinit>()V
    .registers 1

    return-void
.end method

.method public constructor <init>(Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;Ljava/lang/String;)V
    .registers 4
    .param p1, "input"    # Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;
    .param p3, "type"    # Ljava/lang/String;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;",
            "Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box<",
            "*>;",
            "Ljava/lang/String;",
            ")V"
        }
    .end annotation

    .line 26
    .local p2, "parent":Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;, "Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box<*>;"
    invoke-direct {p0, p1, p2, p3}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;-><init>(Lim/tpelyyftgw/messenger/audioinfo/util/PositionInputStream;Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;Ljava/lang/String;)V

    .line 27
    return-void
.end method

.method private appendPath(Ljava/lang/StringBuffer;Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;)Ljava/lang/StringBuffer;
    .registers 4
    .param p1, "s"    # Ljava/lang/StringBuffer;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/StringBuffer;",
            "Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box<",
            "*>;)",
            "Ljava/lang/StringBuffer;"
        }
    .end annotation

    .line 128
    .local p2, "box":Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;, "Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box<*>;"
    invoke-virtual {p2}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;->getParent()Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;

    move-result-object v0

    if-eqz v0, :cond_12

    .line 129
    invoke-virtual {p2}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;->getParent()Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;

    move-result-object v0

    invoke-direct {p0, p1, v0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->appendPath(Ljava/lang/StringBuffer;Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;)Ljava/lang/StringBuffer;

    .line 130
    const-string v0, "/"

    invoke-virtual {p1, v0}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    .line 132
    :cond_12
    invoke-virtual {p2}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;->getType()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p1, v0}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    return-object p1
.end method


# virtual methods
.method public getLength()J
    .registers 5

    .line 30
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getInput()Lim/tpelyyftgw/messenger/audioinfo/util/PositionInputStream;

    move-result-object v0

    check-cast v0, Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;

    invoke-virtual {v0}, Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;->getPosition()J

    move-result-wide v0

    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getInput()Lim/tpelyyftgw/messenger/audioinfo/util/PositionInputStream;

    move-result-object v2

    check-cast v2, Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;

    invoke-virtual {v2}, Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;->getRemainingLength()J

    move-result-wide v2

    add-long/2addr v0, v2

    return-wide v0
.end method

.method public getOffset()J
    .registers 5

    .line 34
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getParent()Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;

    move-result-object v0

    invoke-virtual {v0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;->getPosition()J

    move-result-wide v0

    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getPosition()J

    move-result-wide v2

    sub-long/2addr v0, v2

    return-wide v0
.end method

.method public getPath()Ljava/lang/String;
    .registers 2

    .line 136
    new-instance v0, Ljava/lang/StringBuffer;

    invoke-direct {v0}, Ljava/lang/StringBuffer;-><init>()V

    invoke-direct {p0, v0, p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->appendPath(Ljava/lang/StringBuffer;Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;)Ljava/lang/StringBuffer;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public getRemaining()J
    .registers 3

    .line 38
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getInput()Lim/tpelyyftgw/messenger/audioinfo/util/PositionInputStream;

    move-result-object v0

    check-cast v0, Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;

    invoke-virtual {v0}, Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;->getRemainingLength()J

    move-result-wide v0

    return-wide v0
.end method

.method public hasMoreChildren()Z
    .registers 6

    .line 42
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getChild()Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;

    move-result-object v0

    if-eqz v0, :cond_f

    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getChild()Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;

    move-result-object v0

    invoke-virtual {v0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getRemaining()J

    move-result-wide v0

    goto :goto_11

    :cond_f
    const-wide/16 v0, 0x0

    :goto_11
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getRemaining()J

    move-result-wide v2

    cmp-long v4, v0, v2

    if-gez v4, :cond_1b

    const/4 v0, 0x1

    goto :goto_1c

    :cond_1b
    const/4 v0, 0x0

    :goto_1c
    return v0
.end method

.method public nextChildUpTo(Ljava/lang/String;)Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;
    .registers 7
    .param p1, "expectedTypeExpression"    # Ljava/lang/String;
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 46
    :goto_0
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getRemaining()J

    move-result-wide v0

    const-wide/16 v2, 0x0

    cmp-long v4, v0, v2

    if-lez v4, :cond_1a

    .line 47
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->nextChild()Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;

    move-result-object v0

    .line 48
    .local v0, "atom":Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;
    invoke-virtual {v0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getType()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v1, p1}, Ljava/lang/String;->matches(Ljava/lang/String;)Z

    move-result v1

    if-eqz v1, :cond_19

    .line 49
    return-object v0

    .line 51
    .end local v0    # "atom":Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;
    :cond_19
    goto :goto_0

    .line 52
    :cond_1a
    new-instance v0, Ljava/io/IOException;

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, "atom type mismatch, not found: "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    goto :goto_32

    :goto_31
    throw v0

    :goto_32
    goto :goto_31
.end method

.method public readBoolean()Z
    .registers 2
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 56
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v0}, Ljava/io/DataInput;->readBoolean()Z

    move-result v0

    return v0
.end method

.method public readByte()B
    .registers 2
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 60
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v0}, Ljava/io/DataInput;->readByte()B

    move-result v0

    return v0
.end method

.method public readBytes()[B
    .registers 3
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 82
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getRemaining()J

    move-result-wide v0

    long-to-int v1, v0

    invoke-virtual {p0, v1}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->readBytes(I)[B

    move-result-object v0

    return-object v0
.end method

.method public readBytes(I)[B
    .registers 4
    .param p1, "len"    # I
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 76
    new-array v0, p1, [B

    .line 77
    .local v0, "bytes":[B
    iget-object v1, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v1, v0}, Ljava/io/DataInput;->readFully([B)V

    .line 78
    return-object v0
.end method

.method public readInt()I
    .registers 2
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 68
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v0}, Ljava/io/DataInput;->readInt()I

    move-result v0

    return v0
.end method

.method public readIntegerFixedPoint()Ljava/math/BigDecimal;
    .registers 6
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 92
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v0}, Ljava/io/DataInput;->readShort()S

    move-result v0

    .line 93
    .local v0, "integer":I
    iget-object v1, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v1}, Ljava/io/DataInput;->readUnsignedShort()I

    move-result v1

    .line 94
    .local v1, "decimal":I
    new-instance v2, Ljava/math/BigDecimal;

    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v4, ""

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-static {v1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-direct {v2, v3}, Ljava/math/BigDecimal;-><init>(Ljava/lang/String;)V

    return-object v2
.end method

.method public readLong()J
    .registers 3
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 72
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v0}, Ljava/io/DataInput;->readLong()J

    move-result-wide v0

    return-wide v0
.end method

.method public readShort()S
    .registers 2
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 64
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v0}, Ljava/io/DataInput;->readShort()S

    move-result v0

    return v0
.end method

.method public readShortFixedPoint()Ljava/math/BigDecimal;
    .registers 6
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 86
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v0}, Ljava/io/DataInput;->readByte()B

    move-result v0

    .line 87
    .local v0, "integer":I
    iget-object v1, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    invoke-interface {v1}, Ljava/io/DataInput;->readUnsignedByte()I

    move-result v1

    .line 88
    .local v1, "decimal":I
    new-instance v2, Ljava/math/BigDecimal;

    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v4, ""

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-static {v1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-direct {v2, v3}, Ljava/math/BigDecimal;-><init>(Ljava/lang/String;)V

    return-object v2
.end method

.method public readString(ILjava/lang/String;)Ljava/lang/String;
    .registers 6
    .param p1, "len"    # I
    .param p2, "enc"    # Ljava/lang/String;
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 98
    new-instance v0, Ljava/lang/String;

    invoke-virtual {p0, p1}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->readBytes(I)[B

    move-result-object v1

    invoke-direct {v0, v1, p2}, Ljava/lang/String;-><init>([BLjava/lang/String;)V

    .line 99
    .local v0, "s":Ljava/lang/String;
    const/4 v1, 0x0

    invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(I)I

    move-result v2

    .line 100
    .local v2, "end":I
    if-gez v2, :cond_12

    move-object v1, v0

    goto :goto_16

    :cond_12
    invoke-virtual {v0, v1, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v1

    :goto_16
    return-object v1
.end method

.method public readString(Ljava/lang/String;)Ljava/lang/String;
    .registers 4
    .param p1, "enc"    # Ljava/lang/String;
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 104
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getRemaining()J

    move-result-wide v0

    long-to-int v1, v0

    invoke-virtual {p0, v1, p1}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->readString(ILjava/lang/String;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public skip()V
    .registers 7
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 120
    :goto_0
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getRemaining()J

    move-result-wide v0

    const-wide/16 v2, 0x0

    cmp-long v4, v0, v2

    if-lez v4, :cond_25

    .line 121
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getInput()Lim/tpelyyftgw/messenger/audioinfo/util/PositionInputStream;

    move-result-object v0

    check-cast v0, Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;

    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getRemaining()J

    move-result-wide v4

    invoke-virtual {v0, v4, v5}, Lim/tpelyyftgw/messenger/audioinfo/util/RangeInputStream;->skip(J)J

    move-result-wide v0

    cmp-long v4, v0, v2

    if-eqz v4, :cond_1d

    goto :goto_0

    .line 122
    :cond_1d
    new-instance v0, Ljava/io/EOFException;

    const-string v1, "Cannot skip atom"

    invoke-direct {v0, v1}, Ljava/io/EOFException;-><init>(Ljava/lang/String;)V

    throw v0

    .line 125
    :cond_25
    return-void
.end method

.method public skip(I)V
    .registers 5
    .param p1, "len"    # I
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 108
    const/4 v0, 0x0

    .line 109
    .local v0, "total":I
    :goto_1
    if-ge v0, p1, :cond_15

    .line 110
    iget-object v1, p0, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->data:Ljava/io/DataInput;

    sub-int v2, p1, v0

    invoke-interface {v1, v2}, Ljava/io/DataInput;->skipBytes(I)I

    move-result v1

    .line 111
    .local v1, "current":I
    if-lez v1, :cond_f

    .line 112
    add-int/2addr v0, v1

    .line 116
    .end local v1    # "current":I
    goto :goto_1

    .line 114
    .restart local v1    # "current":I
    :cond_f
    new-instance v2, Ljava/io/EOFException;

    invoke-direct {v2}, Ljava/io/EOFException;-><init>()V

    throw v2

    .line 117
    .end local v1    # "current":I
    :cond_15
    return-void
.end method

.method public toString()Ljava/lang/String;
    .registers 4

    .line 140
    new-instance v0, Ljava/lang/StringBuffer;

    invoke-direct {v0}, Ljava/lang/StringBuffer;-><init>()V

    .line 141
    .local v0, "s":Ljava/lang/StringBuffer;
    invoke-direct {p0, v0, p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->appendPath(Ljava/lang/StringBuffer;Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Box;)Ljava/lang/StringBuffer;

    .line 142
    const-string v1, "[off="

    invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    .line 143
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getOffset()J

    move-result-wide v1

    invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuffer;->append(J)Ljava/lang/StringBuffer;

    .line 144
    const-string v1, ",pos="

    invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    .line 145
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getPosition()J

    move-result-wide v1

    invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuffer;->append(J)Ljava/lang/StringBuffer;

    .line 146
    const-string v1, ",len="

    invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    .line 147
    invoke-virtual {p0}, Lim/tpelyyftgw/messenger/audioinfo/m4a/MP4Atom;->getLength()J

    move-result-wide v1

    invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuffer;->append(J)Ljava/lang/StringBuffer;

    .line 148
    const-string v1, "]"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    .line 149
    invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;

    move-result-object v1

    return-object v1
.end method