public function required($fields)
    {
        Arguments::define(
            Boa::either(Boa::string(), Boa::arrOf(Boa::string()))
        )->check($fields);

        if (!is_array($fields)) {
            $fields = [$fields];
        }

        $this->required = $this->required->append(ArrayList::of($fields));

        return $this;
    }