consolidate interface of Buffer template