values smaller than 0.001 sat/B can't be represented by CFeeRate, but they are not rejected.

```
./src/bitcoin-cli -named sendtoaddress address=bcrt1qwkmhqum095zau5rf2velq55cq938vrd7uw8m4r amount=1.23 fee_rate=0.0009

error code: -6
error message:
Fee rate (0.000 sat/vB) is lower than the minimum fee rate setting (1.000 sat/vB)
```

```
./src/bitcoin-cli -named sendtoaddress address=bcrt1qwkmhqum095zau5rf2velq55cq938vrd7uw8m4r amount=1.23 fee_rate=0.000000000009

error code: -3
error message:
Invalid amount

} else {
            if (was_optional) ret += ") ";
            was_optional = false;
        }
        ret += arg.ToString( true);
    }
    if (was_optional) ret += " )";
    ret += "\n";
    
    ret += m_description;
    
    Sections sections;
    for (size_t i{0}; i < m_args.size(); ++i) {
        const auto& arg = m_args.at(i);
        if (arg.m_hidden) break; 
        if (i == 0) ret += "\nArguments:\n";
        
        sections.m_sections.emplace_back(::ToString(i + 1) + ". " + arg.GetFirstName(), arg.ToDescriptionString());
        sections.m_max_pad = std::max(sections.m_max_pad, sections.m_sections.back().m_left.size());
        
        sections.Push(arg);
    }
    ret += sections.ToString();
    
    ret += m_results.ToDescriptionString();
    
    ret += m_examples.ToDescriptionString();
    return ret;
}
UniValue RPCHelpMan::GetArgMap() const