on second thought, keep original naming, change semantics