fix
refact
HeaderBuilder -> ZipElement
use Deferred
update