reimplementing fab file