attr: consider undefined values
attrs: consider undefined values
match: tests moved to proper place
mod: consider undefined values
mods: consider undefined values