treat returns as functions, since we do it elsewhere we should at least be consistent