modified return type.