add binary file support