def argument(*args, **kwargs, &block)
        required = kwargs.key?(:required) ? kwargs[:required] : attribute_required?(args.first)
        super(*args, **kwargs.except(:required), required: required, &block)