Module:Yesno

-- -- Used to evaluate args to booleans where applicable -- -- Based on  -- see page history there for contributors --

return function( arg, default )

arg = type( arg ) == 'string' and mw.ustring.lower( arg ) or arg

if arg == nil then return nil elseif arg == 'yes' or          arg == 'y' or           arg == 'true' or           tonumber( arg ) ==  1 then return true elseif arg == 'no' or          arg == 'n' or           arg == 'false' or           arg == '' or           tonumber( arg ) == 0 then return false else return default end

end