      *                     assumes 0.
      * @return The index of the first member to return true, or -1 if none did.
      */
-    public static function indexOf(array:Array, boolFunction:Function = null, startIndex:int = 0):int
+    public static function indexOf(array:*, boolFunction:Function = null, startIndex:int = 0):int
     {
         var i:int;
         if (!array) return -1;

     * Returns a copy of an array with equal items removed.  Equality
     * checking is strict <code>===</code>.
     */
    public static function unique(array:Array):Array
    {
        var result:Array = [ ];
        var member:*;

     *                     assumes the end of the array.
     * @return The index of the last member to return true, or -1 if none did.
     */
    public static function lastIndexOf(array:*, boolFunction:Function = null, startIndex:int = -1):int
    {
        var i:int;
        if (!array) return -1;
