preds = [] (separate vt and vi?)
args = []
pred = null
for entry in entries:
if new sentence:
add previous pred to preds
delete args (warning)
if arg:
if arg fills slot in pred:
add to pred (as post or zero)
else:
add to args
if pred:
for arg in args:
if arg fills slot:
add to pred (as pre or zero)
else:
warning(unresolvable arg)
delete args
add previous pred to preds