Don't assume userdata starts at -1