complete GAFF