may return `string`