Refactoring; Add typed Buffer