public function given($name, $closure)
    {
        if (isset(static::$_blacklist[$name])) {
            throw new Exception("Sorry `{$name}` is a reserved keyword, it can't be used as a scope variable.");
        }

        $given = new Given($closure);
        if (array_key_exists($name, $this->_given)) {
            $given->{$name} = $this->_given[$name](Suite::current()->scope());
        }
        $this->_given[$name] = $given;
        return $this;
    }