             return this;
         }
 
+        /**
+         * Executes a function on each item in a stream, and constructs a new
+         * stream of items corresponding to the results of the function on each
+         * item in the original stream.
+         * @param callback The function to run on each item in the stream.
+         *         <p><code>function(item:*):Boolean</code></p>
+         * @return A new stream that contains the results of the function on each item in the original stream.
+         */
         public function map(callback:Function):Stream
         {
             return new Stream(source.map(function (item:*, index:int, array:Array):*

            }
        }


        /*
         * IExternalizable part
         * --------------------------------------------
         */

        /**
         * A class implements this method to decode itself from a data stream by calling
         * the methods of the IDataInput interface. This method must read the values in
         * the same sequence and with the same types as were written by the writeExternal() method.
         * @param input The name of the class that implements the IDataInput interface.
         * @private
         */
        public function readExternal(input:IDataInput):void
        {

         * Executes a test function on each item in the stream until an item is reached
         * that returns true. Use this method to determine whether any items in a
         * stream meet a criterion, such as having a value less than a particular number.
         * @param callback The function to run on each item in the stream.
         *                 <p><code>function(item:*):Boolean</code></p>
         * @return  A Boolean value of true if any items in the stream return true for the specified function; otherwise false.
         */
        public function some(callback:Function):Boolean
