add Buffer and Task class