macro_rules! read {
(
$s:expr,
$i:ident
) => { ... };
(
$s:expr,
$p:literal,
$i:ident
) => { ... };
(
$s:expr,
$($i:ident),*
) => { ... };
(
$s:expr,
$p:literal,
$($i:ident),*
) => { ... };
}