             return this;
         }
 
+        /**
+         * Searches for an item in an stream by using strict equality (===) and returns the index position of the item.
+         * @param item The item to find in the stream.
+         * @param fromIndex The location in the stream from which to start searching for the item.
+         * @return A zero-based index position of the item in the stream. If the searchElement argument is not found, the return value is -1.
+         */
         public function indexOf(item:*, fromIndex:* = 0):int
         {
             return source.indexOf(item, fromIndex);
         }
 
+        /**
+         * Searches for an item in an stream, working backward from the last item, and returns
+         * the index position of the matching item using strict equality (===).
+         * @param item The item to find in the stream.
+         * @param fromIndex  The location in the stream from which to start searching for the item.
+         *                   The default is the maximum value allowed for an index.
+         *                   If you do not specify fromIndex, the search starts at the last item in the stream.
+         * @return A zero-based index position of the item in the stream. If the searchElement argument is not found, the return value is -1.
+         */
         public function lastIndexOf(item:*, fromIndex:* = 2147483647):int
         {
             return source.lastIndexOf(item, fromIndex);
         }
 
+        /**
+         * Executes a test function on each item in the stream until an item is reached
+         * that returns false for the specified function. You use this method to
+         * determine whether all items in a stream meet a criterion, such as
+         * having values 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 all items in the stream return true for the specified function; otherwise, false.
+         */
         public function every(callback:Function):Boolean
         {
             return source.every(function (item:*, index:int, array:Array):Boolean

            });
        }

        public function filter(callback:Function):Stream
        {
            return new Stream(source.filter(function (item:*, index:int, array:Array):Boolean

            }));
        }

        /**
         * Executes a function on each item in the stream.
         * @param callback The function to run on each item in the stream.
         *         <p><code>function(item:*):void</code></p>
         * @return Current stream
         */
        public function forEach(callback:Function):Stream
        {
            source.forEach(function (item:*, index:int, array:Array):void
