Why not simply merge `protocol` and `verb`, ie protocol = source / put / post / icy and remove verb since icy is exclusive with the rest?