private function _indexOf($target, int $start = NULL )
    {
        $values = $this->getValues();
        if ( $start === NULL ){
            $start = 0;
        }
        $size = count($values);
        for( $i=$start; $i < $size; $i++ ){
            $item = $values[$i];
            if ($item instanceof EqualableInterface){
                if ( $item->equals($target) ){
                    return $i;
                }
            }
            else if ($item === $target){
                return $i;
            }
        }

        return FALSE;
    }