fixed for dynamic file sizes