public function range($min, $max, $steps = 1, $round = 0) {

        if(false === is_numeric($min)) {
            return trigger_error(sprintf('Argument 1 passed to %s() must be of the type float or integer, "%s" given', __METHOD__, gettype($min)), E_USER_ERROR);
        }

        if(false === is_numeric($max)) {
            return trigger_error(sprintf('Argument 2 passed to %s() must be of the type float or integer, "%s" given', __METHOD__, gettype($max)), E_USER_ERROR);
        }

        if(false === is_numeric($steps)) {
            return trigger_error(sprintf('Argument 3 passed to %s() must be of the type float or integer, "%s" given', __METHOD__, gettype($steps)), E_USER_ERROR);
        }

        if(false === ('-' . intval($round) == '-' . $round)) {
            return trigger_error(sprintf('Argument 4 passed to %s() must be of the type integer, "%s" given', __METHOD__, gettype($round)), E_USER_ERROR);
        }

        $this -> min    = $min;
        $this -> max    = $max;
        $this -> steps  = $steps;
        $this -> round  = $round;

        return $this;
    }