     }
 
 
-    public function readBytes(bytes:ByteArray):void
-    {
-        recv_stream.client.bytes.readBytes(bytes);
+    public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
+    {
+        recv_stream.client.bytes.readBytes(bytes, offset, length);
     }
 
     public function writeBytes(bytes:ByteArray):void

    import flash.events.ProgressEvent;
    import flash.events.SecurityErrorEvent;
    import flash.utils.ByteArray;
    import flash.utils.setTimeout;
    import flash.utils.clearInterval;
    import flash.utils.setInterval;
    import flash.utils.setTimeout;
    import flash.net.NetConnection;

    import rtmfp.RTMFPSocket;
    import rtmfp.events.RTMFPSocketEvent;

    public class return_of_the_rtmfpcat extends Sprite
    {

        send_stream.publish(DATA); 

        recv_stream = new NetStream(circon, clientID);
        var client_rtmfp:RTMFPSocketClient = new RTMFPSocketClient();
        client_rtmfp.addEventListener(ProgressEvent.SOCKET_DATA, function (event:ProgressEvent):void {
            dispatchEvent(event);
        }, false, 0, true);
        recv_stream.client = client_rtmfp;
        recv_stream.play(DATA);
    }

