modified return value