add extended header impl phase 1