implement header methods
separate table initializer as private method