{@inheritdoc}

@param  int $num Number of elements to drop.

@return Collection

@throws InvalidArgumentException
334115
public function drop( $num ) {
		if ( $num > $this->count() ) {
			$num = $this->count();
		}

		return $this->slice( $num, $this->count() );
	}
520801
function drop ($n = 1)
  {
    $this->pack ();
    $this->data = array_slice ($this->data, 0, -$n);
    return $this;
  }
628100
public function skip($num)
    {
        $num = (integer) $num;
        $this->skip = $num;
        $this->mongoCursor->skip($num);
        return $this;
    }
1061347
public static function lowerAlpha(int $num): string
    {
        $alpha = static::upperAlpha($num);

        return StringHelper::toLowerCase($alpha);
    }
1167529
public function random($amount = 1)
    {
        if ($amount > ($count = $this->count())) {

            throw new InvalidArgumentException("You requested {$amount} items, but there are only {$count} items in the collection.");
        }

        $keys = array_rand($this->items, $amount);

        if (count(func_get_args()) == 0) {

            return $this->items[ $keys ];
        }

        $keys = !is_array($keys) ? [$keys] : $keys;

        return new static(array_intersect_key($this->items, array_flip($keys)));
    }
1169674
public function setNumber($num)
    {
        $num = (int) $num;
        if ($num <= 0) {
            throw new \InvalidArgumentException(sprintf(
                    'Invalid Number "%s" - Polygon Coordinates Number Must Be '
                    . 'Greater Than Zero'
                    , $num
            ));
        }
        $count = count($this->getCoordinates());
        if ($num > $count) {
            throw new \OutOfBoundsException(sprintf(
                    'Given Coodrinates Number "%s" Is Greater Than The Actual '
                    . 'Coordinates Array Size "%s"'
                    , $num, $count
            ));
        }
        $this->count = $num;

        return $this;
    }
496311
public function getArg($num)
    {
        return isset($this->args[$num]) ? $this->args[$num] : null;
    }
960336
public function iuand(BN $num) {
        $this->bi = $this->bi->binaryAnd($num->bi);
        return $this;
    }
1300494
public static function div($num1, $num2)
    {
        if (!static::is($num1) || !static::is($num2)) {
            throw new \InvalidArgumentException("The \$num1 and \$num2 parameters must be numeric.");
        }

        if ($num2 == 0) {
            throw new \InvalidArgumentException("Cannot divide by zero. The \$num2 parameter cannot be zero.");
        }

        return ($num1 / $num2);
    }
326486
public static function integerAsOptions($num)
    {
        $options = [];

        for ($i = 0; $i <= $num; $i++) {
            $options[] = $i;
        }

        shuffle($options);

        return $options;
    }
1252363
public function setNum($num = 20)
    {
        if (!is_numeric($num) && $num !== self::SEARCH_ALL) {
            throw new \InvalidArgumentException(
                'Argument can only be numeric or "all" to return all results.'
            );
        }
        $this->otherOptions['num'] = $num;

        return $this;
    }
904221
public function skipNext($num = 1)
    {
        $skip = new DispatchHaltedException(null, DispatchHaltedException::SKIP_NEXT);
        $skip->setNumberOfSkips($num);

        throw $skip;
    }
275298
public function getPathPart($num) {
    if ($num < 1) throw new \InvalidArgumentException('Num ist 1-basierend');
    if ($num > count($this->path)) return NULL;
    
    return $this->path[$num-1];
  }
586562
public function sub($num, $type = 'd') {
        $typeSum = $this->converType($type);
        $typeSumString = ($num > 1) ? \Cityware\Format\Inflector::pluralize($typeSum) : $typeSum;
        $this->dateTime->modify('-' . $num . ' ' . $typeSumString);
        return $this;
    }
214191
public function removeParameter($param) {
		if (is_int($param)) {
			$this->removeParameterByPosition($param);
		} else if (is_string($param)) {
			$this->removeParameterByName($param);
		} else if ($param instanceof PhpParameter) {
			$this->removeParameterByName($param->getName());
		}

		return $this;
	}
1335996
public function padLeft($num, self $char){
		
		if(!\is_numeric($num)){
			throw new \InvalidArgumentException('$num is not an int');
		}
		
		return new static($char->repeat($num)->_Value . $this->_Value, $this->_Encoding);
		
	}
1264636
public function delete()
    {
        $status = $this->getMongoCollection()->drop();

        if ($status['ok'] != 1) {
            // check if collection exists
            if ('ns not found' !== $status['errmsg']) {
                // collection exist
                throw new Exception('Error deleting collection ' . $this->getName() . ': ' . $status['errmsg']);
            }
        }

        return $this;
    }