Changes
use parent args again
-- Allow arguments to override defaults. Arguments are taken from
-- the parent frame; other arguments are ignored.
for k,v in pairs(frame:getParent().args) do
retvals[k] = v
end
val = frame:getParent().args[1]
-- First deal with the case if val is nil, then deal with other cases.