improved file support