macro_rules! match_tl_request {
($req_body:expr, $(tag = $tag:expr,)? {
$($ty:path as $pat:pat => $expr:expr),*$(,)?
}, $err:pat => $err_exr:expr) => { ... };
(@inner $req_body:expr, $tag:expr, $($rest:tt)*) => { ... };
(@inner $req_body:expr, , $($rest:tt)*) => { ... };
}