class TTCDataStream extends TTFDataStream
{
    private final TTFDataStream stream; 
    
    TTCDataStream(TTFDataStream stream)
    {
        this.stream = stream;
    }
    
    @Override
    public int read() throws IOException
    {
        return stream.read();
    }

    @Override
    public long readLong() throws IOException
    {
        return stream.readLong();
    }

    @Override
    public void close() throws IOException
    {<FILL_FUNCTION_BODY>}

    @Override
    public void seek(long pos) throws IOException
    {
        stream.seek(pos);
    }

    @Override
    public int read(byte[] b, int off, int len) throws IOException
    {
        return stream.read(b, off, len);
    }

    @Override
    public long getCurrentPosition() throws IOException
    {
        return stream.getCurrentPosition();
    }

    @Override
    public InputStream getOriginalData() throws IOException
    {
        return stream.getOriginalData();
    }

    @Override
    public long getOriginalDataSize()
    {
        return stream.getOriginalDataSize();
    }

}

        // don't close the underlying stream, as it is shared by all fonts from the same TTC
        // TrueTypeCollection.close() must be called instead
    
<methods>public abstract long getCurrentPosition() throws java.io.IOException,public abstract java.io.InputStream getOriginalData() throws java.io.IOException,public abstract long getOriginalDataSize() ,public abstract int read() throws java.io.IOException,public byte[] read(int) throws java.io.IOException,public abstract int read(byte[], int, int) throws java.io.IOException,public float read32Fixed() throws java.io.IOException,public java.util.Calendar readInternationalDate() throws java.io.IOException,public abstract long readLong() throws java.io.IOException,public int readSignedByte() throws java.io.IOException,public short readSignedShort() throws java.io.IOException,public java.lang.String readString(int) throws java.io.IOException,public java.lang.String readString(int, java.nio.charset.Charset) throws java.io.IOException,public java.lang.String readTag() throws java.io.IOException,public int readUnsignedByte() throws java.io.IOException,public int[] readUnsignedByteArray(int) throws java.io.IOException,public long readUnsignedInt() throws java.io.IOException,public int readUnsignedShort() throws java.io.IOException,public int[] readUnsignedShortArray(int) throws java.io.IOException,public abstract void seek(long) throws java.io.IOException<variables>private static final java.util.TimeZone TIMEZONE_UTC