buff struct