public function where($requirements = [])
    {
        foreach ($requirements as $name => $args) {
            if (!isset($this->_messages[$name])) {
                throw new InvalidArgumentException("Unexisting `{$name}` as method as part of the chain definition.");