> || - or, can no longer be used with and unless one group is in parentheses
Seriously? Do you require the "+" and "" operators to have parentheses around them? Why do people think order of operations is hard with "and" and "or"? I really* don't get it (and always turn off compiler warnings about that when working with C).
Also, "ownskey" is a bit of a mouthful. Why not ".?" ("?." would be "get key if object isn't null")?