That is the code. It's evaulating the result of (_G and tonumber or assert) and then calling that with ('', '')
Ah hah! I know what's wrong. The reason this is happening is "or" has a higher precendence than "and", so it's turning into (_G and (tonumber or assert)), which becomes (_G and assert), which becomes (assert)('','').
Where is this code at?