must allocate filename?